[jboss-jira] [JBoss JIRA] (DROOLS-2138) Upgrade Jaxb depedency

Petar Tahchiev (JIRA) issues at jboss.org
Fri Apr 6 15:43:00 EDT 2018


    [ https://issues.jboss.org/browse/DROOLS-2138?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13557621#comment-13557621 ] 

Petar Tahchiev commented on DROOLS-2138:
----------------------------------------

I don't think it should be a big issue. At the moment drools is using jaxb-2.2.11:

{code}
[INFO] \- org.kie.server:kie-server-client:jar:7.7.0.Final:compile
[INFO]    +- com.sun.xml.bind:jaxb-core:jar:2.2.11:compile
[INFO]    \- com.sun.xml.bind:jaxb-impl:jar:2.2.11:compile
{code}

and if you look at the jaxb-parent 2.2.11:
view-source:http://repo1.maven.org/maven2/com/sun/xml/bind/mvn/jaxb-parent/2.2.11/jaxb-parent-2.2.11.pom

You will see they declare the ${tools.jar} dependency which in java9 is no longer there.
However jaxb released last year 2.3.0 which no longer has this dependency:

view-source:http://repo1.maven.org/maven2/com/sun/xml/bind/mvn/jaxb-parent/2.3.0/jaxb-parent-2.3.0.pom

So all you have to do is stop using 4-year old dependencies.

> Upgrade Jaxb depedency
> ----------------------
>
>                 Key: DROOLS-2138
>                 URL: https://issues.jboss.org/browse/DROOLS-2138
>             Project: Drools
>          Issue Type: Bug
>            Reporter: Petar Tahchiev
>            Assignee: Michael Biarnes Kiefer
>
> I'm sorry if this is no the correct place to report this but when building my project with jdk9, I get this warning:
> {code}
> [WARNING] Failed to build parent project for com.sun.xml.bind.mvn:jaxb-bundles:pom:2.2.11
> [WARNING] Failed to build parent project for com.sun.xml.bind:jaxb-core:jar:2.2.11
> [WARNING] Unable to obtain POM for artifact : com.sun.xml.bind:jaxb-core:jar:2.2.11:compile
> org.apache.maven.project.InvalidProjectModelException: Some problems were encountered while processing the POMs:
> [ERROR] 'dependencyManagement.dependencies.dependency.systemPath' for com.sun:tools:jar must specify an absolute path but is ${tools.jar} @ com.sun.xml.bind.mvn:jaxb-parent:[unknown-version], /home/petar/.m2/repository/com/sun/xml/bind/mvn/jaxb-parent/2.2.11/jaxb-parent-2.2.11.pom, line 164, column 29
>  for project 
> 	at org.apache.maven.project.DefaultMavenProjectBuilder.transformError(DefaultMavenProjectBuilder.java:193)
> 	at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository(DefaultMavenProjectBuilder.java:240)
> 	at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository(DefaultMavenProjectBuilder.java:251)
> 	at org.codehaus.mojo.license.api.DefaultDependenciesTool.loadProjectDependencies(DefaultDependenciesTool.java:233)
> 	at org.codehaus.mojo.license.api.DefaultThirdPartyHelper.loadDependencies(DefaultThirdPartyHelper.java:152)
> 	at org.codehaus.mojo.license.AddThirdPartyMojo.loadDependencies(AddThirdPartyMojo.java:294)
> 	at org.codehaus.mojo.license.AbstractAddThirdPartyMojo.init(AbstractAddThirdPartyMojo.java:400)
> 	at org.codehaus.mojo.license.AbstractLicenseMojo.execute(AbstractLicenseMojo.java:169)
> 	at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:134)
> 	at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:208)
> 	at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:154)
> 	at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:146)
> 	at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:117)
> 	at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:81)
> 	at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:51)
> 	at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128)
> 	at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:309)
> 	at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:194)
> 	at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:107)
> 	at org.apache.maven.cli.MavenCli.execute(MavenCli.java:993)
> 	at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:345)
> 	at org.apache.maven.cli.MavenCli.main(MavenCli.java:191)
> 	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> 	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> 	at java.base/java.lang.reflect.Method.invoke(Method.java:564)
> 	at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289)
> 	at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)
> 	at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415)
> 	at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)
> {code}
> which happens to be because of the jaxb dependency you have here:
> https://github.com/kiegroup/droolsjbpm-integration/blob/master/kie-server-parent/kie-server-remote/kie-server-client/pom.xml#L105
> which requires the {{tools.jar}} (from jaxb-parent-2.2.11 pom.xml):
> {code}
>             <!-- JDK dependencies -->
>             <dependency>
>                 <groupId>com.sun</groupId>
>                 <artifactId>tools</artifactId>
>                 <version>1.6</version>
>                 <scope>system</scope>
>                 <systemPath>${tools.jar}</systemPath>
>             </dependency>
> {code}



--
This message was sent by Atlassian JIRA
(v7.5.0#75005)


More information about the jboss-jira mailing list