Bug#902982: libtycho-java: tycho-maven-plugin breaks with ClassNotFoundException: org.eclipse.tycho.resolver.TychoResolver

Emmanuel Bourg ebourg at apache.org
Wed Jul 4 14:07:25 BST 2018


Package: libtycho-java
Version: 0.25.0-4
Severity: important

I'm trying to build equinox-bundles with the tycho-maven-plugin and I get this exception:

  [WARNING] Error injecting: org.eclipse.tycho.core.maven.TychoMavenLifecycleParticipant
  java.lang.NoClassDefFoundError: Lorg/eclipse/tycho/resolver/TychoResolver;
      at java.lang.Class.getDeclaredFields0 (Native Method)
      at java.lang.Class.privateGetDeclaredFields (Class.java:3014)
      at java.lang.Class.getDeclaredFields (Class.java:2207)
      at com.google.inject.spi.InjectionPoint.getInjectionPoints (InjectionPoint.java:675)
      at com.google.inject.spi.InjectionPoint.forInstanceMethodsAndFields (InjectionPoint.java:380)
      at com.google.inject.internal.ConstructorBindingImpl.getInternalDependencies (ConstructorBindingImpl.java:164)
      at com.google.inject.internal.InjectorImpl.getInternalDependencies (InjectorImpl.java:613)
      at com.google.inject.internal.InjectorImpl.cleanup (InjectorImpl.java:569)
      at com.google.inject.internal.InjectorImpl.initializeJitBinding (InjectorImpl.java:555)
      at com.google.inject.internal.InjectorImpl.createJustInTimeBinding (InjectorImpl.java:884)
      at com.google.inject.internal.InjectorImpl.createJustInTimeBindingRecursive (InjectorImpl.java:805)
      at com.google.inject.internal.InjectorImpl.getJustInTimeBinding (InjectorImpl.java:282)
      at com.google.inject.internal.InjectorImpl.getBindingOrThrow (InjectorImpl.java:214)
      at com.google.inject.internal.InjectorImpl.getProviderOrThrow (InjectorImpl.java:1006)
      at com.google.inject.internal.InjectorImpl.getProvider (InjectorImpl.java:1038)
      at com.google.inject.internal.InjectorImpl.getProvider (InjectorImpl.java:1001)
      at com.google.inject.internal.InjectorImpl.getInstance (InjectorImpl.java:1051)
      at org.eclipse.sisu.space.AbstractDeferredClass.get (AbstractDeferredClass.java:48)
      at com.google.inject.internal.ProviderInternalFactory.provision (ProviderInternalFactory.java:81)
      at com.google.inject.internal.InternalFactoryToInitializableAdapter.provision (InternalFactoryToInitializableAdapter.java:53)
      at com.google.inject.internal.ProviderInternalFactory$1.call (ProviderInternalFactory.java:65)
      at com.google.inject.internal.ProvisionListenerStackCallback$Provision.provision (ProvisionListenerStackCallback.java:115)
      at org.eclipse.sisu.bean.BeanScheduler$Activator.onProvision (BeanScheduler.java:176)
      at com.google.inject.internal.ProvisionListenerStackCallback$Provision.provision (ProvisionListenerStackCallback.java:126)
      at com.google.inject.internal.ProvisionListenerStackCallback.provision (ProvisionListenerStackCallback.java:68)
      at com.google.inject.internal.ProviderInternalFactory.circularGet (ProviderInternalFactory.java:63)
      at com.google.inject.internal.InternalFactoryToInitializableAdapter.get (InternalFactoryToInitializableAdapter.java:45)
      at com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call (ProviderToInternalFactoryAdapter.java:46)
      at com.google.inject.internal.InjectorImpl.callInContext (InjectorImpl.java:1103)
      at com.google.inject.internal.ProviderToInternalFactoryAdapter.get (ProviderToInternalFactoryAdapter.java:40)
      at com.google.inject.internal.SingletonScope$1.get (SingletonScope.java:145)
      at com.google.inject.internal.InternalFactoryToProviderAdapter.get (InternalFactoryToProviderAdapter.java:41)
      at com.google.inject.internal.InjectorImpl$2$1.call (InjectorImpl.java:1016)
      at com.google.inject.internal.InjectorImpl.callInContext (InjectorImpl.java:1092)
      at com.google.inject.internal.InjectorImpl$2.get (InjectorImpl.java:1012)
      at org.eclipse.sisu.inject.LazyBeanEntry.getValue (LazyBeanEntry.java:81)
      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:351)
      at org.apache.maven.DefaultMaven.getLifecycleParticipants (DefaultMaven.java:397)
      at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:260)
      at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192)
      at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105)
      at org.apache.maven.cli.MavenCli.execute (MavenCli.java:956)
      at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:290)
      at org.apache.maven.cli.MavenCli.main (MavenCli.java:194)
      at org.apache.maven.cli.MavenCli.main (MavenCli.java:183)
      at org.debian.maven.Wrapper.main (Wrapper.java:89)
      at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
      at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62)
      at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
      at java.lang.reflect.Method.invoke (Method.java:564)
      at org.codehaus.plexus.classworlds.launcher.Launcher.launchStandard (Launcher.java:330)
      at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:238)
      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.eclipse.tycho.resolver.TychoResolver
      at org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy.loadClass (SelfFirstStrategy.java:50)
      at org.codehaus.plexus.classworlds.realm.ClassRealm.unsynchronizedLoadClass (ClassRealm.java:271)
      at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass (ClassRealm.java:247)
      at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass (ClassRealm.java:239)
      at java.lang.Class.getDeclaredFields0 (Native Method)
      at java.lang.Class.privateGetDeclaredFields (Class.java:3014)
      at java.lang.Class.getDeclaredFields (Class.java:2207)
      at com.google.inject.spi.InjectionPoint.getInjectionPoints (InjectionPoint.java:67


Running Maven in debug mode provides more infortmation:

  [WARNING] The POM for org.eclipse.tycho:tycho-core:jar:0.25.0 is invalid, transitive dependencies (if any) will not be available: 1 problem was encountered while building the effective model for org.eclipse.tycho:tycho-core:0.25.0
  [ERROR] 'dependencies.dependency.version' for org.mockito:mockito-core:jar is missing. @

It seems the lack of version in the pom of tycho-core for the dependency
on mockito-core breaks the dependency resolution. After adding the version
manually the error goes away.



More information about the pkg-java-maintainers mailing list