CVS provider is removed from maven-scm package. Comment from spec file: "Partially remove cvs support for removal of netbeans-cvsclient. It still works with cvsexe provider" However CVS provider is not removed from Plexus components.xml. Plexus container has knowledge about the CVS provider, but it is unable to load it: [main] WARN Sisu - Error injecting: org.apache.maven.scm.provider.cvslib.cvsjava.CvsJavaScmProvider java.lang.TypeNotPresentException: Type org.apache.maven.scm.provider.cvslib.cvsjava.CvsJavaScmProvider not present at org.sonatype.guice.bean.reflect.URLClassSpace.loadClass(URLClassSpace.java:103) at org.sonatype.guice.bean.reflect.NamedClass.load(NamedClass.java:45) at org.sonatype.guice.bean.reflect.AbstractDeferredClass.get(AbstractDeferredClass.java:47) 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.circularGet(ProviderInternalFactory.java:66) 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:1055) 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$3$1.call(InjectorImpl.java:1002) at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1048) at com.google.inject.internal.InjectorImpl$3.get(InjectorImpl.java:998) at org.sonatype.guice.bean.locators.LazyBeanEntry.getValue(LazyBeanEntry.java:79) at org.sonatype.guice.plexus.locators.LazyPlexusBean.getValue(LazyPlexusBean.java:49) at org.apache.maven.scm.manager.AbstractScmManager.getProviderByType(AbstractScmManager.java:136) at org.apache.maven.scm.manager.AbstractScmManager.makeScmRepository(AbstractScmManager.java:190) at Test.main(Test.java:8) Caused by: java.lang.ClassNotFoundException: org.apache.maven.scm.provider.cvslib.cvsjava.CvsJavaScmProvider at org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy.loadClass(SelfFirstStrategy.java:50) at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:244) at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:230) at org.sonatype.guice.bean.reflect.URLClassSpace.loadClass(URLClassSpace.java:99) ... 20 more Exception in thread "main" com.google.inject.ProvisionException: Guice provision errors: 1) Error in custom provider, java.lang.TypeNotPresentException: Type org.apache.maven.scm.provider.cvslib.cvsjava.CvsJavaScmProvider not present at ClassRealm[plexus.core, parent: null] at ClassRealm[plexus.core, parent: null] while locating org.apache.maven.scm.provider.ScmProvider annotated with @com.google.inject.name.Named(value=cvs) 1 error at com.google.inject.internal.InjectorImpl$3.get(InjectorImpl.java:1011) at org.sonatype.guice.bean.locators.LazyBeanEntry.getValue(LazyBeanEntry.java:79) at org.sonatype.guice.plexus.locators.LazyPlexusBean.getValue(LazyPlexusBean.java:49) at org.apache.maven.scm.manager.AbstractScmManager.getProviderByType(AbstractScmManager.java:136) at org.apache.maven.scm.manager.AbstractScmManager.makeScmRepository(AbstractScmManager.java:190) at Test.main(Test.java:8) Caused by: java.lang.TypeNotPresentException: Type org.apache.maven.scm.provider.cvslib.cvsjava.CvsJavaScmProvider not present at org.sonatype.guice.bean.reflect.URLClassSpace.loadClass(URLClassSpace.java:103) at org.sonatype.guice.bean.reflect.NamedClass.load(NamedClass.java:45) at org.sonatype.guice.bean.reflect.AbstractDeferredClass.get(AbstractDeferredClass.java:47) 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.circularGet(ProviderInternalFactory.java:66) 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:1055) 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$3$1.call(InjectorImpl.java:1002) at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1048) at com.google.inject.internal.InjectorImpl$3.get(InjectorImpl.java:998) ... 6 more Caused by: java.lang.ClassNotFoundException: org.apache.maven.scm.provider.cvslib.cvsjava.CvsJavaScmProvider at org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy.loadClass(SelfFirstStrategy.java:50) at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:244) at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:230) at org.sonatype.guice.bean.reflect.URLClassSpace.loadClass(URLClassSpace.java:99) ... 20 more Possible solutions: 1) Remove cvs provider from components.xml (tested, works) 2) Replace cvs implementation with cvs_native (cvsexe) Version-Release number of selected component (if applicable): 1.7-6
Created attachment 747647 [details] Proposed patch
I have applied this fix as I updated maven-scm to latest upstream version 1.8.1 in F20 and rawhide. Should be fixed in maven-scm-1.8.1-1