maven-tiles
maven-tiles copied to clipboard
Can't get example building
Both in my own project, and in the example code, the build fails with the following console output:
C:\code\github\maven-tiles-examples>mvn help:effective-pom
[INFO] Scanning for projects...
Downloading: http://repo.maven.apache.org/maven2/it/session/maven/plugins/tiles-maven-plugin/0.8-beta-5/tiles-maven-plugin-0.8-beta-5.pom
Downloaded: http://repo.maven.apache.org/maven2/it/session/maven/plugins/tiles-maven-plugin/0.8-beta-5/tiles-maven-plugin-0.8-beta-5.pom (4 KB at 3.7 KB/sec)
Downloading: http://repo.maven.apache.org/maven2/it/session/maven/maven-tiles-parent/0.8-beta-5/maven-tiles-parent-0.8-beta-5.pom
Downloaded: http://repo.maven.apache.org/maven2/it/session/maven/maven-tiles-parent/0.8-beta-5/maven-tiles-parent-0.8-beta-5.pom (4KB at 6.2 KB/sec)
Downloading: http://repo.maven.apache.org/maven2/it/session/maven/plugins/tiles-maven-plugin/0.8-beta-5/tiles-maven-plugin-0.8-beta-5.jar
Downloaded: http://repo.maven.apache.org/maven2/it/session/maven/plugins/tiles-maven-plugin/0.8-beta-5/tiles-maven-plugin-0.8-beta-5.jar (7 KB at 11.7 KB/sec)
[WARNING] Error injecting: it.session.maven.plugin.TilesMavenLifecycleParticipant
java.lang.NoClassDefFoundError: org/sonatype/aether/resolution/ArtifactResolutionException
at java.lang.Class.getDeclaredConstructors0(Native Method)
at java.lang.Class.privateGetDeclaredConstructors(Class.java:2493)
at java.lang.Class.getDeclaredConstructors(Class.java:1901)
at com.google.inject.spi.InjectionPoint.forConstructorOf(InjectionPoint.java:245)
at com.google.inject.internal.ConstructorBindingImpl.create(ConstructorBindingImpl.java:99)
at com.google.inject.internal.InjectorImpl.createUninitializedBinding(InjectorImpl.java:653)
at com.google.inject.internal.InjectorImpl.createJustInTimeBinding(InjectorImpl.java:863)
at com.google.inject.internal.InjectorImpl.createJustInTimeBindingRecursive(InjectorImpl.java:790)
at com.google.inject.internal.InjectorImpl.getJustInTimeBinding(InjectorImpl.java:278)
at com.google.inject.internal.InjectorImpl.getBindingOrThrow(InjectorImpl.java:210)
at com.google.inject.internal.InjectorImpl.getProviderOrThrow(InjectorImpl.java:986)
at com.google.inject.internal.InjectorImpl.getProvider(InjectorImpl.java:1019)
at com.google.inject.internal.InjectorImpl.getProvider(InjectorImpl.java:982)
at com.google.inject.internal.InjectorImpl.getInstance(InjectorImpl.java:1032)
at org.eclipse.sisu.space.AbstractDeferredClass.get(AbstractDeferredClass.java:48)
at com.google.inject.internal.ProviderInternalFactory.provision(ProviderInternalFactory.java:86)
at com.google.inject.internal.InternalFactoryToInitializableAdapter.provision(InternalFactoryToInitializableAdapter.java:55)
at com.google.inject.internal.ProviderInternalFactory$1.call(ProviderInternalFactory.java:70)
at com.google.inject.internal.ProvisionListenerStackCallback$Provision.provision(ProvisionListenerStackCallback.java:100)
at org.eclipse.sisu.plexus.PlexusLifecycleManager.onProvision(PlexusLifecycleManager.java:133)
at com.google.inject.internal.ProvisionListenerStackCallback$Provision.provision(ProvisionListenerStackCallback.java:109)
at com.google.inject.internal.ProvisionListenerStackCallback.provision(ProvisionListenerStackCallback.java:55)
at com.google.inject.internal.ProviderInternalFactory.circularGet(ProviderInternalFactory.java:68)
at com.google.inject.internal.InternalFactoryToInitializableAdapter.get(InternalFactoryToInitializableAdapter.java:47)
at com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46)
at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1054)
at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40)
at com.google.inject.Scopes$1$1.get(Scopes.java:59)
at com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:41)
at com.google.inject.internal.InjectorImpl$2$1.call(InjectorImpl.java:997)
at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1047)
at com.google.inject.internal.InjectorImpl$2.get(InjectorImpl.java:993)
at org.eclipse.sisu.inject.LazyBeanEntry.getValue(LazyBeanEntry.java:82)
at org.eclipse.sisu.plexus.LazyPlexusBean.getValue(LazyPlexusBean.java:51)
at org.eclipse.sisu.wire.EntryListAdapter$ValueIterator.next(EntryListAdapter.java:111)
at java.util.AbstractCollection.addAll(AbstractCollection.java:341)
at org.apache.maven.DefaultMaven.getLifecycleParticipants(DefaultMaven.java:539)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:267)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:152)
at org.apache.maven.cli.MavenCli.execute(MavenCli.java:555)
at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:214)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:158)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
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)
Caused by: java.lang.ClassNotFoundException: org.sonatype.aether.resolution.ArtifactResolutionException
at org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy.loadClass(SelfFirstStrategy.java:50)
at org.codehaus.plexus.classworlds.realm.ClassRealm.unsynchronizedLoadClass(ClassRealm.java:259)
at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:235)
at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:227)
... 50 more
---------------------------------------------------
constituent[0]: file:/C:/Program%20Files/Java/apache-maven-3.1.1/lib/aether-api-0.9.0.M2.jar
constituent[1]: file:/C:/Program%20Files/Java/apache-maven-3.1.1/lib/aether-connector-wagon-0.9.0.M2.jar
constituent[2]: file:/C:/Program%20Files/Java/apache-maven-3.1.1/lib/aether-impl-0.9.0.M2.jar
constituent[3]: file:/C:/Program%20Files/Java/apache-maven-3.1.1/lib/aether-spi-0.9.0.M2.jar
constituent[4]: file:/C:/Program%20Files/Java/apache-maven-3.1.1/lib/aether-util-0.9.0.M2.jar
constituent[5]: file:/C:/Program%20Files/Java/apache-maven-3.1.1/lib/aopalliance-1.0.jar
constituent[6]: file:/C:/Program%20Files/Java/apache-maven-3.1.1/lib/cdi-api-1.0.jar
constituent[7]: file:/C:/Program%20Files/Java/apache-maven-3.1.1/lib/commons-cli-1.2.jar
constituent[8]: file:/C:/Program%20Files/Java/apache-maven-3.1.1/lib/guava-11.0.2.jar
constituent[9]: file:/C:/Program%20Files/Java/apache-maven-3.1.1/lib/javax.inject-1.jar
constituent[10]: file:/C:/Program%20Files/Java/apache-maven-3.1.1/lib/jsr250-api-1.0.jar
constituent[11]: file:/C:/Program%20Files/Java/apache-maven-3.1.1/lib/jsr305-1.3.9.jar
constituent[12]: file:/C:/Program%20Files/Java/apache-maven-3.1.1/lib/maven-aether-provider-3.1.1.jar
constituent[13]: file:/C:/Program%20Files/Java/apache-maven-3.1.1/lib/maven-artifact-3.1.1.jar
constituent[14]: file:/C:/Program%20Files/Java/apache-maven-3.1.1/lib/maven-compat-3.1.1.jar
constituent[15]: file:/C:/Program%20Files/Java/apache-maven-3.1.1/lib/maven-core-3.1.1.jar
constituent[16]: file:/C:/Program%20Files/Java/apache-maven-3.1.1/lib/maven-embedder-3.1.1.jar
constituent[17]: file:/C:/Program%20Files/Java/apache-maven-3.1.1/lib/maven-model-3.1.1.jar
constituent[18]: file:/C:/Program%20Files/Java/apache-maven-3.1.1/lib/maven-model-builder-3.1.1.jar
constituent[19]: file:/C:/Program%20Files/Java/apache-maven-3.1.1/lib/maven-plugin-api-3.1.1.jar
constituent[20]: file:/C:/Program%20Files/Java/apache-maven-3.1.1/lib/maven-repository-metadata-3.1.1.jar
constituent[21]: file:/C:/Program%20Files/Java/apache-maven-3.1.1/lib/maven-settings-3.1.1.jar
constituent[22]: file:/C:/Program%20Files/Java/apache-maven-3.1.1/lib/maven-settings-builder-3.1.1.jar
constituent[23]: file:/C:/Program%20Files/Java/apache-maven-3.1.1/lib/org.eclipse.sisu.inject-0.0.0.M5.jar
constituent[24]: file:/C:/Program%20Files/Java/apache-maven-3.1.1/lib/org.eclipse.sisu.plexus-0.0.0.M5.jar
constituent[25]: file:/C:/Program%20Files/Java/apache-maven-3.1.1/lib/plexus-cipher-1.7.jar
constituent[26]: file:/C:/Program%20Files/Java/apache-maven-3.1.1/lib/plexus-component-annotations-1.5.5.jar
constituent[27]: file:/C:/Program%20Files/Java/apache-maven-3.1.1/lib/plexus-interpolation-1.19.jar
constituent[28]: file:/C:/Program%20Files/Java/apache-maven-3.1.1/lib/plexus-sec-dispatcher-1.3.jar
constituent[29]: file:/C:/Program%20Files/Java/apache-maven-3.1.1/lib/plexus-utils-3.0.15.jar
constituent[30]: file:/C:/Program%20Files/Java/apache-maven-3.1.1/lib/sisu-guice-3.1.3-no_aop.jar
constituent[31]: file:/C:/Program%20Files/Java/apache-maven-3.1.1/lib/slf4j-api-1.7.5.jar
constituent[32]: file:/C:/Program%20Files/Java/apache-maven-3.1.1/lib/slf4j-simple-1.7.5.jar
constituent[33]: file:/C:/Program%20Files/Java/apache-maven-3.1.1/lib/wagon-file-2.4.jar
constituent[34]: file:/C:/Program%20Files/Java/apache-maven-3.1.1/lib/wagon-http-2.4-shaded.jar
constituent[35]: file:/C:/Program%20Files/Java/apache-maven-3.1.1/lib/wagon-provider-api-2.4.jar
constituent[36]: file:/C:/Program%20Files/Java/apache-maven-3.1.1/conf/logging/
---------------------------------------------------
Exception in thread "main" java.lang.NoClassDefFoundError: org/sonatype/aether/resolution/ArtifactResolutionException
at java.lang.Class.getDeclaredConstructors0(Native Method)
at java.lang.Class.privateGetDeclaredConstructors(Class.java:2493)
at java.lang.Class.getDeclaredConstructors(Class.java:1901)
at com.google.inject.spi.InjectionPoint.forConstructorOf(InjectionPoint.java:245)
at com.google.inject.internal.ConstructorBindingImpl.create(ConstructorBindingImpl.java:99)
at com.google.inject.internal.InjectorImpl.createUninitializedBinding(InjectorImpl.java:653)
at com.google.inject.internal.InjectorImpl.createJustInTimeBinding(InjectorImpl.java:863)
at com.google.inject.internal.InjectorImpl.createJustInTimeBindingRecursive(InjectorImpl.java:790)
at com.google.inject.internal.InjectorImpl.getJustInTimeBinding(InjectorImpl.java:278)
at com.google.inject.internal.InjectorImpl.getBindingOrThrow(InjectorImpl.java:210)
at com.google.inject.internal.InjectorImpl.getProviderOrThrow(InjectorImpl.java:986)
at com.google.inject.internal.InjectorImpl.getProvider(InjectorImpl.java:1019)
at com.google.inject.internal.InjectorImpl.getProvider(InjectorImpl.java:982)
at com.google.inject.internal.InjectorImpl.getInstance(InjectorImpl.java:1032)
at org.eclipse.sisu.space.AbstractDeferredClass.get(AbstractDeferredClass.java:48)
at com.google.inject.internal.ProviderInternalFactory.provision(ProviderInternalFactory.java:86)
at com.google.inject.internal.InternalFactoryToInitializableAdapter.provision(InternalFactoryToInitializableAdapter.java:55)
at com.google.inject.internal.ProviderInternalFactory$1.call(ProviderInternalFactory.java:70)
at com.google.inject.internal.ProvisionListenerStackCallback$Provision.provision(ProvisionListenerStackCallback.java:100)
at org.eclipse.sisu.plexus.PlexusLifecycleManager.onProvision(PlexusLifecycleManager.java:133)
at com.google.inject.internal.ProvisionListenerStackCallback$Provision.provision(ProvisionListenerStackCallback.java:109)
at com.google.inject.internal.ProvisionListenerStackCallback.provision(ProvisionListenerStackCallback.java:55)
at com.google.inject.internal.ProviderInternalFactory.circularGet(ProviderInternalFactory.java:68)
at com.google.inject.internal.InternalFactoryToInitializableAdapter.get(InternalFactoryToInitializableAdapter.java:47)
at com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46)
at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1054)
at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40)
at com.google.inject.Scopes$1$1.get(Scopes.java:59)
at com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:41)
at com.google.inject.internal.InjectorImpl$2$1.call(InjectorImpl.java:997)
at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1047)
at com.google.inject.internal.InjectorImpl$2.get(InjectorImpl.java:993)
at org.eclipse.sisu.inject.LazyBeanEntry.getValue(LazyBeanEntry.java:82)
at org.eclipse.sisu.plexus.LazyPlexusBean.getValue(LazyPlexusBean.java:51)
at org.eclipse.sisu.wire.EntryListAdapter$ValueIterator.next(EntryListAdapter.java:111)
at java.util.AbstractCollection.addAll(AbstractCollection.java:341)
at org.apache.maven.DefaultMaven.getLifecycleParticipants(DefaultMaven.java:539)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:267)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:152)
at org.apache.maven.cli.MavenCli.execute(MavenCli.java:555)
at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:214)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:158)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
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)
Caused by: java.lang.ClassNotFoundException: org.sonatype.aether.resolution.ArtifactResolutionException
at org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy.loadClass(SelfFirstStrategy.java:50)
at org.codehaus.plexus.classworlds.realm.ClassRealm.unsynchronizedLoadClass(ClassRealm.java:259)
at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:235)
at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:227)
... 50 more
From one of my colleagues:
Ahh, you're using Maven 3.1.1 I assume? Which breaks switches to the Eclipse Aether version.
Maven-tiles will just need to be updated to work with the multiple aethers ( well documented how to support that ).
https://cwiki.apache.org/confluence/display/MAVEN/AetherClassNotFound documents it - but it seems the wiki is down at the moment :(
Updating the maven-core dependency exposes the issue in the plugin build, but I haven't had time to do much more than that: https://github.com/Tzrlk/maven-tiles/tree/mavenversion
for(Plugin sourcePlugin : source.getBuild().getPlugins()) { Plugin targetPlugin = target.getBuild().getPluginsAsMap().get(sourcePlugin.getKey()); if (targetPlugin == null) { // no existing plugin of that type target.getBuild().getPlugins().add(sourcePlugin); } else { super.mergePlugin(targetPlugin, sourcePlugin, sourceDominant, context);
Set<Entry<String, PluginExecution>> entrySet = targetPlugin.getExecutionsAsMap().entrySet();
How to resolve above issue ?