highsource / jaxb-tools

The most advanced JAXB2 Maven Plugin for XML Schema compilation.
Other
425 stars 98 forks source link

jaxb-maven-plugin fails on Maven 4.0.0-beta3 due to javax dependency #545

Closed danshome closed 1 month ago

danshome commented 3 months ago

[ERROR] Failed to execute goal org.jvnet.jaxb:jaxb-maven-plugin:4.0.6:generate (default) on project myproject: Execution default of goal org.jvnet.jaxb:jaxb-maven-plugin:4.0.6:generate failed: Plugin org.jvnet.jaxb:jaxb-maven-plugin:4.0.6 or one of its dependencies could not be resolved: The following artifacts could not be resolved: javax.annotation:javax.annotation-api:jar:1.3.2 (absent) -> [Help 1] org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.jvnet.jaxb:jaxb-maven-plugin:4.0.6:generate (default) on project cris-common-xmldata-java: Execution default of goal org.jvnet.jaxb:jaxb-maven-plugin:4.0.6:generate failed: Plugin org.jvnet.jaxb:jaxb-maven-plugin:4.0.6 or one of its dependencies could not be resolved: The following artifacts could not be resolved: javax.annotation:javax.annotation-api:jar:1.3.2 (absent) at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute2(MojoExecutor.java:329) at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute(MojoExecutor.java:311) at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:213) at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:178) at org.apache.maven.lifecycle.internal.MojoExecutor$1.run(MojoExecutor.java:167) at org.apache.maven.plugin.DefaultMojosExecutionStrategy.execute(DefaultMojosExecutionStrategy.java:39) at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:164) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:107) at org.apache.maven.lifecycle.internal.builder.multithreaded.MultiThreadedBuilder.lambda$createBuildCallable$1(MultiThreadedBuilder.java:202) at java.util.concurrent.FutureTask.run(FutureTask.java:317) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572) at java.util.concurrent.FutureTask.run(FutureTask.java:317) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) at java.lang.Thread.run(Thread.java:1583) Caused by: org.apache.maven.plugin.PluginExecutionException: Execution default of goal org.jvnet.jaxb:jaxb-maven-plugin:4.0.6:generate failed: Plugin org.jvnet.jaxb:jaxb-maven-plugin:4.0.6 or one of its dependencies could not be resolved: The following artifacts could not be resolved: javax.annotation:javax.annotation-api:jar:1.3.2 (absent) at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:107) at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute2(MojoExecutor.java:323) at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute(MojoExecutor.java:311) at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:213) at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:178) at org.apache.maven.lifecycle.internal.MojoExecutor$1.run(MojoExecutor.java:167) at org.apache.maven.plugin.DefaultMojosExecutionStrategy.execute(DefaultMojosExecutionStrategy.java:39) at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:164) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:107) at org.apache.maven.lifecycle.internal.builder.multithreaded.MultiThreadedBuilder.lambda$createBuildCallable$1(MultiThreadedBuilder.java:202) at java.util.concurrent.FutureTask.run(FutureTask.java:317) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572) at java.util.concurrent.FutureTask.run(FutureTask.java:317) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) at java.lang.Thread.run(Thread.java:1583) Caused by: org.apache.maven.plugin.PluginResolutionException: Plugin org.jvnet.jaxb:jaxb-maven-plugin:4.0.6 or one of its dependencies could not be resolved: The following artifacts could not be resolved: javax.annotation:javax.annotation-api:jar:1.3.2 (absent) at org.apache.maven.plugin.internal.DefaultPluginDependenciesResolver.resolveInternal(DefaultPluginDependenciesResolver.java:234) at org.apache.maven.plugin.internal.DefaultPluginDependenciesResolver.resolvePlugin(DefaultPluginDependenciesResolver.java:168) at org.apache.maven.plugin.internal.DefaultMavenPluginManager.createPluginRealm(DefaultMavenPluginManager.java:393) at org.apache.maven.plugin.internal.DefaultMavenPluginManager.lambda$setupPluginRealm$4(DefaultMavenPluginManager.java:356) at org.apache.maven.plugin.DefaultPluginRealmCache.lambda$get$0(DefaultPluginRealmCache.java:158) at java.util.concurrent.ConcurrentHashMap.computeIfAbsent(ConcurrentHashMap.java:1708) at org.apache.maven.plugin.DefaultPluginRealmCache.get(DefaultPluginRealmCache.java:156) at org.apache.maven.plugin.internal.DefaultMavenPluginManager.setupPluginRealm(DefaultMavenPluginManager.java:355) at org.apache.maven.plugin.DefaultBuildPluginManager.getPluginRealm(DefaultBuildPluginManager.java:209) at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:105) at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute2(MojoExecutor.java:323) at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute(MojoExecutor.java:311) at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:213) at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:178) at org.apache.maven.lifecycle.internal.MojoExecutor$1.run(MojoExecutor.java:167) at org.apache.maven.plugin.DefaultMojosExecutionStrategy.execute(DefaultMojosExecutionStrategy.java:39) at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:164) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:107) at org.apache.maven.lifecycle.internal.builder.multithreaded.MultiThreadedBuilder.lambda$createBuildCallable$1(MultiThreadedBuilder.java:202) at java.util.concurrent.FutureTask.run(FutureTask.java:317) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572) at java.util.concurrent.FutureTask.run(FutureTask.java:317) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) at java.lang.Thread.run(Thread.java:1583) Caused by: org.eclipse.aether.resolution.ArtifactResolutionException: The following artifacts could not be resolved: javax.annotation:javax.annotation-api:jar:1.3.2 (absent) at org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolve(DefaultArtifactResolver.java:416) at org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolveArtifacts(DefaultArtifactResolver.java:193) at org.eclipse.aether.internal.impl.DefaultRepositorySystem.resolveDependencies(DefaultRepositorySystem.java:292) at org.apache.maven.plugin.internal.DefaultPluginDependenciesResolver.resolveInternal(DefaultPluginDependenciesResolver.java:230) at org.apache.maven.plugin.internal.DefaultPluginDependenciesResolver.resolvePlugin(DefaultPluginDependenciesResolver.java:168) at org.apache.maven.plugin.internal.DefaultMavenPluginManager.createPluginRealm(DefaultMavenPluginManager.java:393) at org.apache.maven.plugin.internal.DefaultMavenPluginManager.lambda$setupPluginRealm$4(DefaultMavenPluginManager.java:356) at org.apache.maven.plugin.DefaultPluginRealmCache.lambda$get$0(DefaultPluginRealmCache.java:158) at java.util.concurrent.ConcurrentHashMap.computeIfAbsent(ConcurrentHashMap.java:1708) at org.apache.maven.plugin.DefaultPluginRealmCache.get(DefaultPluginRealmCache.java:156) at org.apache.maven.plugin.internal.DefaultMavenPluginManager.setupPluginRealm(DefaultMavenPluginManager.java:355) at org.apache.maven.plugin.DefaultBuildPluginManager.getPluginRealm(DefaultBuildPluginManager.java:209) at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:105) at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute2(MojoExecutor.java:323) at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute(MojoExecutor.java:311) at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:213) at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:178) at org.apache.maven.lifecycle.internal.MojoExecutor$1.run(MojoExecutor.java:167) at org.apache.maven.plugin.DefaultMojosExecutionStrategy.execute(DefaultMojosExecutionStrategy.java:39) at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:164) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:107) at org.apache.maven.lifecycle.internal.builder.multithreaded.MultiThreadedBuilder.lambda$createBuildCallable$1(MultiThreadedBuilder.java:202) at java.util.concurrent.FutureTask.run(FutureTask.java:317) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572) at java.util.concurrent.FutureTask.run(FutureTask.java:317) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) at java.lang.Thread.run(Thread.java:1583)

laurentschoelens commented 3 months ago

Hi @danshome

Could you share sample pom.xml to reproduce the issue ?

mattrpav commented 3 months ago

Looks like maven is pulling the javax.annotation jar and not jaxb-tools

[INFO] --- dependency:3.6.0:tree (default-cli) @ jaxb-maven-plugin-core ---
[INFO] org.jvnet.jaxb:jaxb-maven-plugin-core:jar:4.0.6-SNAPSHOT
[INFO] +- jakarta.xml.bind:jakarta.xml.bind-api:jar:4.0.2:provided
[INFO] |  \- jakarta.activation:jakarta.activation-api:jar:2.1.3:provided
[INFO] +- org.slf4j:slf4j-api:jar:1.7.36:compile
[INFO] +- org.apache.commons:commons-lang3:jar:3.12.0:compile
[INFO] +- xml-resolver:xml-resolver:jar:1.2:compile
[INFO] +- org.glassfish.jaxb:txw2:jar:4.0.5:compile
[INFO] +- org.apache.maven:maven-plugin-api:jar:3.9.6:compile
[INFO] |  +- org.apache.maven:maven-model:jar:3.9.6:compile
[INFO] |  +- org.apache.maven:maven-artifact:jar:3.9.6:compile
[INFO] |  +- org.eclipse.sisu:org.eclipse.sisu.plexus:jar:0.9.0.M2:compile
[INFO] |  |  \- javax.annotation:javax.annotation-api:jar:1.2:compile
laurentschoelens commented 1 month ago

@yvanzo : could you try running again with delete of local copy of javax.annotation:javax.annotation-api:jar:1.3.2 in your local .m2 ? I've tried again with 4.0.0-alpha13 and everything is working as expected.

Closing issue if no new comments or MRE.