You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@maven.apache.org by Mark Derricutt <ma...@talios.com> on 2023/02/02 03:55:17 UTC
Re: Maven 3.9,0 plan
Following up on this. I removed all the [] deps from my plugin but
still seem to get the same issue of the class missing.
I definitely see the class in my maven 3.9-staged/lib directory, and
have even updated the dependency version in my plugin to match.
The code in question that's failing is the creation of the Aether
repository system - it's possible this has changed:
```
private static RepositorySystem newRepositorySystem() {
DefaultServiceLocator locator =
MavenRepositorySystemUtils.newServiceLocator();
locator.addService(RepositoryConnectorFactory.class,
BasicRepositoryConnectorFactory.class);
locator.addService(TransporterFactory.class,
FileTransporterFactory.class);
locator.addService(TransporterFactory.class,
HttpTransporterFactory.class);
return locator.getService(RepositorySystem.class);
}
```
and trace was:
```
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo
(DefaultBuildPluginManager.java:149)
at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute2
(MojoExecutor.java:341)
at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute
(MojoExecutor.java:329)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute
(MojoExecutor.java:212)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute
(MojoExecutor.java:174)
at org.apache.maven.lifecycle.internal.MojoExecutor.access$000
(MojoExecutor.java:75)
at org.apache.maven.lifecycle.internal.MojoExecutor$1.run
(MojoExecutor.java:162)
at org.apache.maven.plugin.DefaultMojosExecutionStrategy.execute
(DefaultMojosExecutionStrategy.java:37)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute
(MojoExecutor.java:159)
at
org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject
(LifecycleModuleBuilder.java:104)
at
org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject
(LifecycleModuleBuilder.java:72)
at
org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build
(SingleThreadedBuilder.java:52)
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute
(LifecycleStarter.java:117)
at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:259)
at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:171)
at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:99)
at org.apache.maven.cli.MavenCli.execute (MavenCli.java:820)
at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:269)
at org.apache.maven.cli.MavenCli.main (MavenCli.java:191)
at sun.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke
(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke
(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke (Method.java:498)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced
(Launcher.java:282)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch
(Launcher.java:225)
at
org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode
(Launcher.java:406)
at org.codehaus.plexus.classworlds.launcher.Launcher.main
(Launcher.java:347)
Caused by: java.lang.NoClassDefFoundError:
org/eclipse/aether/connector/basic/BasicRepositoryConnectorFactory
at
com.smxemail.rangeresolver.lang.RepositoryResolver.newRepositorySystem
(RepositoryResolver.java:123)
at com.smxemail.rangeresolver.lang.RepositoryResolver.<init>
(RepositoryResolver.java:108)
at
com.smxemail.rangeresolver.lang.RepositoryResolver.createRepositoryResolver
(RepositoryResolver.java:118)
at com.smxemail.rangeresolver.mojo.RangeResolverMojo.execute
(RangeResolverMojo.java:113)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo
(DefaultBuildPluginManager.java:125)
at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute2
(MojoExecutor.java:341)
at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute
(MojoExecutor.java:329)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute
(MojoExecutor.java:212)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute
(MojoExecutor.java:174)
at org.apache.maven.lifecycle.internal.MojoExecutor.access$000
(MojoExecutor.java:75)
at org.apache.maven.lifecycle.internal.MojoExecutor$1.run
(MojoExecutor.java:162)
at org.apache.maven.plugin.DefaultMojosExecutionStrategy.execute
(DefaultMojosExecutionStrategy.java:37)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute
(MojoExecutor.java:159)
at
org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject
(LifecycleModuleBuilder.java:104)
at
org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject
(LifecycleModuleBuilder.java:72)
at
org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build
(SingleThreadedBuilder.java:52)
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute
(LifecycleStarter.java:117)
at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:259)
at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:171)
at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:99)
at org.apache.maven.cli.MavenCli.execute (MavenCli.java:820)
at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:269)
at org.apache.maven.cli.MavenCli.main (MavenCli.java:191)
at sun.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke
(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke
(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke (Method.java:498)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced
(Launcher.java:282)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch
(Launcher.java:225)
at
org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode
(Launcher.java:406)
at org.codehaus.plexus.classworlds.launcher.Launcher.main
(Launcher.java:347)
Caused by: java.lang.ClassNotFoundException:
org.eclipse.aether.connector.basic.BasicRepositoryConnectorFactory
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
com.smxemail.rangeresolver.lang.RepositoryResolver.newRepositorySystem
(RepositoryResolver.java:123)
at com.smxemail.rangeresolver.lang.RepositoryResolver.<init>
(RepositoryResolver.java:108)
at
com.smxemail.rangeresolver.lang.RepositoryResolver.createRepositoryResolver
(RepositoryResolver.java:118)
```
I see the class is included in the `maven-resolver-impl-1.9.4.jar` file
but that doesn't appear to be in the class path:
```
at org.codehaus.plexus.classworlds.launcher.Launcher.main
(Launcher.java:347)
Caused by: org.apache.maven.plugin.PluginContainerException: A required
class was missing while executing
com.smxemail:rangeresolver-maven-plugin:1.1.59-SNAPSHOT:resolve-deps:
org/eclipse/aether/connector/basic/BasicRepo
-----------------------------------------------------
realm =
plugin>com.smxemail:rangeresolver-maven-plugin:1.1.59-SNAPSHOT
strategy = org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy
urls[0] =
file:/Users/amrk/.m2/repository/com/smxemail/rangeresolver-maven-plugin/1.1.59-SNAPSHOT/rangeresolver-maven-plugin-1.1.59-SNAPSHOT.jar
urls[1] =
file:/Users/amrk/.m2/repository/com/smxemail/com.smxemail.rangeresolver/1.1.34.2-SNAPSHOT/com.smxemail.rangeresolver-1.1.34.2-SNAPSHOT.jar
urls[2] =
file:/Users/amrk/.m2/repository/com/google/guava/guava/31.1-jre/guava-31.1-jre.jar
urls[3] =
file:/Users/amrk/.m2/repository/org/apache/commons/commons-lang3/3.12.0/commons-lang3-3.12.0.jar
urls[4] =
file:/Users/amrk/.m2/repository/org/apache/maven/resolver/maven-resolver-named-locks/1.9.4/maven-resolver-named-locks-1.9.4.jar
urls[5] =
file:/Users/amrk/.m2/repository/org/apache/maven/resolver/maven-resolver-transport-file/1.9.4/maven-resolver-transport-file-1.9.4.jar
urls[6] =
file:/Users/amrk/.m2/repository/org/apache/maven/resolver/maven-resolver-transport-http/1.9.4/maven-resolver-transport-http-1.9.4.jar
urls[7] =
file:/Users/amrk/.m2/repository/org/apache/httpcomponents/httpclient/4.5.13/httpclient-4.5.13.jar
urls[8] =
file:/Users/amrk/.m2/repository/commons-codec/commons-codec/1.11/commons-codec-1.11.jar
urls[9] =
file:/Users/amrk/.m2/repository/org/apache/httpcomponents/httpcore/4.4.15/httpcore-4.4.15.jar
urls[10] =
file:/Users/amrk/.m2/repository/org/slf4j/jcl-over-slf4j/1.7.36/jcl-over-slf4j-1.7.36.jar
urls[11] =
file:/Users/amrk/.m2/repository/org/jetbrains/annotations/23.0.0/annotations-23.0.0.jar
urls[12] =
file:/Users/amrk/.m2/repository/io/vavr/vavr/1.0.0-alpha-4/vavr-1.0.0-alpha-4.jar
urls[13] =
file:/Users/amrk/.m2/repository/org/antlr/antlr4-runtime/4.9.3/antlr4-runtime-4.9.3.jar
urls[14] =
file:/Users/amrk/.m2/repository/org/sonatype/plexus/plexus-sec-dispatcher/1.4/plexus-sec-dispatcher-1.4.jar
urls[15] =
file:/Users/amrk/.m2/repository/org/sonatype/plexus/plexus-cipher/1.4/plexus-cipher-1.4.jar
urls[16] =
file:/Users/amrk/.m2/repository/org/apache/maven/maven-builder-support/3.5.2/maven-builder-support-3.5.2.jar
urls[17] =
file:/Users/amrk/.m2/repository/org/apache/maven/shared/maven-shared-utils/3.1.0/maven-shared-utils-3.1.0.jar
urls[18] =
file:/Users/amrk/.m2/repository/commons-io/commons-io/2.5/commons-io-2.5.jar
urls[19] =
file:/Users/amrk/.m2/repository/org/eclipse/sisu/org.eclipse.sisu.inject/0.3.3/org.eclipse.sisu.inject-0.3.3.jar
urls[20] =
file:/Users/amrk/.m2/repository/com/google/inject/guice/4.0/guice-4.0-no_aop.jar
urls[21] =
file:/Users/amrk/.m2/repository/aopalliance/aopalliance/1.0/aopalliance-1.0.jar
urls[22] =
file:/Users/amrk/.m2/repository/org/codehaus/plexus/plexus-utils/3.1.0/plexus-utils-3.1.0.jar
urls[23] =
file:/Users/amrk/.m2/repository/org/apache/maven/plugin-tools/maven-plugin-annotations/3.5/maven-plugin-annotations-3.5.jar
urls[24] =
file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-api/1.9.5/maven-scm-api-1.9.5.jar
urls[25] =
file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-manager-plexus/1.9.5/maven-scm-manager-plexus-1.9.5.jar
urls[26] =
file:/Users/amrk/.m2/repository/junit/junit/3.8.1/junit-3.8.1.jar
urls[27] =
file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-providers-standard/1.9.5/maven-scm-providers-standard-1.9.5.pom
urls[28] =
file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-accurev/1.9.5/maven-scm-provider-accurev-1.9.5.jar
urls[29] =
file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-bazaar/1.9.5/maven-scm-provider-bazaar-1.9.5.jar
urls[30] =
file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-clearcase/1.9.5/maven-scm-provider-clearcase-1.9.5.jar
urls[31] =
file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-cvsexe/1.9.5/maven-scm-provider-cvsexe-1.9.5.jar
urls[32] =
file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-cvs-commons/1.9.5/maven-scm-provider-cvs-commons-1.9.5.jar
urls[33] =
file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-cvsjava/1.9.5/maven-scm-provider-cvsjava-1.9.5.jar
urls[34] =
file:/Users/amrk/.m2/repository/org/netbeans/lib/cvsclient/20060125/cvsclient-20060125.jar
urls[35] =
file:/Users/amrk/.m2/repository/ch/ethz/ganymed/ganymed-ssh2/build210/ganymed-ssh2-build210.jar
urls[36] =
file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-gitexe/1.9.5/maven-scm-provider-gitexe-1.9.5.jar
urls[37] =
file:/Users/amrk/.m2/repository/commons-lang/commons-lang/2.6/commons-lang-2.6.jar
urls[38] =
file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-git-commons/1.9.5/maven-scm-provider-git-commons-1.9.5.jar
urls[39] =
file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-jgit/1.9.5/maven-scm-provider-jgit-1.9.5.jar
urls[40] =
file:/Users/amrk/.m2/repository/org/eclipse/jgit/org.eclipse.jgit/3.7.1.201504261725-r/org.eclipse.jgit-3.7.1.201504261725-r.jar
urls[41] =
file:/Users/amrk/.m2/repository/com/jcraft/jsch/0.1.50/jsch-0.1.50.jar
urls[42] =
file:/Users/amrk/.m2/repository/com/googlecode/javaewah/JavaEWAH/0.7.9/JavaEWAH-0.7.9.jar
urls[43] =
file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-hg/1.9.5/maven-scm-provider-hg-1.9.5.jar
urls[44] =
file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-perforce/1.9.5/maven-scm-provider-perforce-1.9.5.jar
urls[45] =
file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-starteam/1.9.5/maven-scm-provider-starteam-1.9.5.jar
urls[46] =
file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-svnexe/1.9.5/maven-scm-provider-svnexe-1.9.5.jar
urls[47] =
file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-svn-commons/1.9.5/maven-scm-provider-svn-commons-1.9.5.jar
urls[48] =
file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-synergy/1.9.5/maven-scm-provider-synergy-1.9.5.jar
urls[49] =
file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-vss/1.9.5/maven-scm-provider-vss-1.9.5.jar
urls[50] =
file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-tfs/1.9.5/maven-scm-provider-tfs-1.9.5.jar
urls[51] =
file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-integrity/1.9.5/maven-scm-provider-integrity-1.9.5.jar
urls[52] =
file:/Users/amrk/.m2/repository/com/mks/api/mksapi-jar/4.10.9049/mksapi-jar-4.10.9049.jar
urls[53] =
file:/Users/amrk/.m2/repository/org/codehaus/groovy/groovy-all/1.7.6/groovy-all-1.7.6.jar
urls[54] =
file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-jazz/1.9.5/maven-scm-provider-jazz-1.9.5.jar
urls[55] =
file:/Users/amrk/.m2/repository/org/apache/maven/shared/maven-filtering/1.3/maven-filtering-1.3.jar
urls[56] =
file:/Users/amrk/.m2/repository/backport-util-concurrent/backport-util-concurrent/3.1/backport-util-concurrent-3.1.jar
urls[57] =
file:/Users/amrk/.m2/repository/org/codehaus/plexus/plexus-interpolation/1.19/plexus-interpolation-1.19.jar
urls[58] =
file:/Users/amrk/.m2/repository/org/sonatype/plexus/plexus-build-api/0.0.4/plexus-build-api-0.0.4.jar
urls[59] =
file:/Users/amrk/.m2/repository/org/codehaus/plexus/plexus-component-annotations/1.7.1/plexus-component-annotations-1.7.1.jar
urls[60] =
file:/Users/amrk/.m2/repository/javax/enterprise/cdi-api/1.0/cdi-api-1.0.jar
urls[61] =
file:/Users/amrk/.m2/repository/javax/annotation/jsr250-api/1.0/jsr250-api-1.0.jar
urls[62] =
file:/Users/amrk/.m2/repository/org/jdom/jdom2/2.0.6.1/jdom2-2.0.6.1.jar
Number of foreign imports: 1
import: Entry[import from realm
ClassRealm[project>com.smxemail:rangeresolver-maven-plugin:1.1.59-SNAPSHOT,
parent: ClassRealm[maven.api, parent: null]]]
```
Mark
On 24 Jan 2023, at 21:22, Tamás Cservenák wrote:
> Mark,
>
> Can you provide more information about this error?
>
> I understand if this plugin is internal (not OSS), but can you provide
> me
>
> the POM of it, or at least the dependencies snippet related to Maven
> and
>
> resolver?
>
> "A required class is missing" is strange, especially as
>
> BasicRepositoryConnectorFactory is provided by Maven itself?
>
> Thanks
>
> Tamas
---
"The ease with which a change can be implemented has no relevance at all
to whether it is the right change for the (Java) Platform for all time."
— Mark Reinhold.
Mark Derricutt
http://www.chaliceofblood.net
http://www.theoryinpractice.net
http://twitter.com/talios
http://facebook.com/mderricutt
Re: Maven 3.9,0 plan
Posted by Delany <de...@gmail.com>.
Hi Tamas, Konrad
I moved a checksum-maven-plugin config to a package activated profile as
now possible in 3.9.0
But I still want control over whether it activates.
The profile always activates when packaging=jar
I can override that and turn it off with -P-checksum
But some of these plugins should be off by default, not on by default.
The only way to do that is to allow multiple properties as in
https://issues.apache.org/jira/browse/MNG-3328
I'm just reminding this issue is 16 years old with over 100 watchers
Kind regards,
Delany
On Thu, 2 Feb 2023 at 09:02, Tamás Cservenák <ta...@cservenak.net> wrote:
> Ok, I'll take a look. Mark, can you direct me to the source code?
>
> But just as a starting point: within Maven, why are you "booting" a
> completely new resolver instance using ServiceLocator?
>
> But the best would be to have access to the sources....
>
> Thanks
> T
>
> On Thu, Feb 2, 2023 at 4:55 AM Mark Derricutt <ma...@talios.com> wrote:
>
> > Following up on this. I removed all the [] deps from my plugin but
> > still seem to get the same issue of the class missing.
> >
> > I definitely see the class in my maven 3.9-staged/lib directory, and
> > have even updated the dependency version in my plugin to match.
> >
> > The code in question that's failing is the creation of the Aether
> > repository system - it's possible this has changed:
> >
> > ```
> > private static RepositorySystem newRepositorySystem() {
> > DefaultServiceLocator locator =
> > MavenRepositorySystemUtils.newServiceLocator();
> > locator.addService(RepositoryConnectorFactory.class,
> > BasicRepositoryConnectorFactory.class);
> > locator.addService(TransporterFactory.class,
> > FileTransporterFactory.class);
> > locator.addService(TransporterFactory.class,
> > HttpTransporterFactory.class);
> > return locator.getService(RepositorySystem.class);
> > }
> > ```
> >
> > and trace was:
> >
> > ```
> > at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo
> > (DefaultBuildPluginManager.java:149)
> > at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute2
> > (MojoExecutor.java:341)
> > at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute
> > (MojoExecutor.java:329)
> > at org.apache.maven.lifecycle.internal.MojoExecutor.execute
> > (MojoExecutor.java:212)
> > at org.apache.maven.lifecycle.internal.MojoExecutor.execute
> > (MojoExecutor.java:174)
> > at org.apache.maven.lifecycle.internal.MojoExecutor.access$000
> > (MojoExecutor.java:75)
> > at org.apache.maven.lifecycle.internal.MojoExecutor$1.run
> > (MojoExecutor.java:162)
> > at org.apache.maven.plugin.DefaultMojosExecutionStrategy.execute
> > (DefaultMojosExecutionStrategy.java:37)
> > at org.apache.maven.lifecycle.internal.MojoExecutor.execute
> > (MojoExecutor.java:159)
> > at
> > org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject
> > (LifecycleModuleBuilder.java:104)
> > at
> > org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject
> > (LifecycleModuleBuilder.java:72)
> > at
> >
> org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build
> >
> > (SingleThreadedBuilder.java:52)
> > at org.apache.maven.lifecycle.internal.LifecycleStarter.execute
> > (LifecycleStarter.java:117)
> > at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:259)
> > at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:171)
> > at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:99)
> > at org.apache.maven.cli.MavenCli.execute (MavenCli.java:820)
> > at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:269)
> > at org.apache.maven.cli.MavenCli.main (MavenCli.java:191)
> > at sun.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
> > at sun.reflect.NativeMethodAccessorImpl.invoke
> > (NativeMethodAccessorImpl.java:62)
> > at sun.reflect.DelegatingMethodAccessorImpl.invoke
> > (DelegatingMethodAccessorImpl.java:43)
> > at java.lang.reflect.Method.invoke (Method.java:498)
> > at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced
> > (Launcher.java:282)
> > at org.codehaus.plexus.classworlds.launcher.Launcher.launch
> > (Launcher.java:225)
> > at
> > org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode
> > (Launcher.java:406)
> > at org.codehaus.plexus.classworlds.launcher.Launcher.main
> > (Launcher.java:347)
> > Caused by: java.lang.NoClassDefFoundError:
> > org/eclipse/aether/connector/basic/BasicRepositoryConnectorFactory
> > at
> > com.smxemail.rangeresolver.lang.RepositoryResolver.newRepositorySystem
> > (RepositoryResolver.java:123)
> > at com.smxemail.rangeresolver.lang.RepositoryResolver.<init>
> > (RepositoryResolver.java:108)
> > at
> >
> com.smxemail.rangeresolver.lang.RepositoryResolver.createRepositoryResolver
> >
> > (RepositoryResolver.java:118)
> > at com.smxemail.rangeresolver.mojo.RangeResolverMojo.execute
> > (RangeResolverMojo.java:113)
> > at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo
> > (DefaultBuildPluginManager.java:125)
> > at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute2
> > (MojoExecutor.java:341)
> > at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute
> > (MojoExecutor.java:329)
> > at org.apache.maven.lifecycle.internal.MojoExecutor.execute
> > (MojoExecutor.java:212)
> > at org.apache.maven.lifecycle.internal.MojoExecutor.execute
> > (MojoExecutor.java:174)
> > at org.apache.maven.lifecycle.internal.MojoExecutor.access$000
> > (MojoExecutor.java:75)
> > at org.apache.maven.lifecycle.internal.MojoExecutor$1.run
> > (MojoExecutor.java:162)
> > at org.apache.maven.plugin.DefaultMojosExecutionStrategy.execute
> > (DefaultMojosExecutionStrategy.java:37)
> > at org.apache.maven.lifecycle.internal.MojoExecutor.execute
> > (MojoExecutor.java:159)
> > at
> > org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject
> > (LifecycleModuleBuilder.java:104)
> > at
> > org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject
> > (LifecycleModuleBuilder.java:72)
> > at
> >
> org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build
> >
> > (SingleThreadedBuilder.java:52)
> > at org.apache.maven.lifecycle.internal.LifecycleStarter.execute
> > (LifecycleStarter.java:117)
> > at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:259)
> > at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:171)
> > at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:99)
> > at org.apache.maven.cli.MavenCli.execute (MavenCli.java:820)
> > at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:269)
> > at org.apache.maven.cli.MavenCli.main (MavenCli.java:191)
> > at sun.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
> > at sun.reflect.NativeMethodAccessorImpl.invoke
> > (NativeMethodAccessorImpl.java:62)
> > at sun.reflect.DelegatingMethodAccessorImpl.invoke
> > (DelegatingMethodAccessorImpl.java:43)
> > at java.lang.reflect.Method.invoke (Method.java:498)
> > at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced
> > (Launcher.java:282)
> > at org.codehaus.plexus.classworlds.launcher.Launcher.launch
> > (Launcher.java:225)
> > at
> > org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode
> > (Launcher.java:406)
> > at org.codehaus.plexus.classworlds.launcher.Launcher.main
> > (Launcher.java:347)
> > Caused by: java.lang.ClassNotFoundException:
> > org.eclipse.aether.connector.basic.BasicRepositoryConnectorFactory
> > 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
> > com.smxemail.rangeresolver.lang.RepositoryResolver.newRepositorySystem
> > (RepositoryResolver.java:123)
> > at com.smxemail.rangeresolver.lang.RepositoryResolver.<init>
> > (RepositoryResolver.java:108)
> > at
> >
> com.smxemail.rangeresolver.lang.RepositoryResolver.createRepositoryResolver
> >
> > (RepositoryResolver.java:118)
> > ```
> >
> > I see the class is included in the `maven-resolver-impl-1.9.4.jar` file
> > but that doesn't appear to be in the class path:
> >
> >
> > ```
> > at org.codehaus.plexus.classworlds.launcher.Launcher.main
> > (Launcher.java:347)
> > Caused by: org.apache.maven.plugin.PluginContainerException: A required
> > class was missing while executing
> > com.smxemail:rangeresolver-maven-plugin:1.1.59-SNAPSHOT:resolve-deps:
> > org/eclipse/aether/connector/basic/BasicRepo
> > -----------------------------------------------------
> > realm =
> > plugin>com.smxemail:rangeresolver-maven-plugin:1.1.59-SNAPSHOT
> > strategy = org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy
> > urls[0] =
> >
> >
> file:/Users/amrk/.m2/repository/com/smxemail/rangeresolver-maven-plugin/1.1.59-SNAPSHOT/rangeresolver-maven-plugin-1.1.59-SNAPSHOT.jar
> > urls[1] =
> > file:/Users/amrk/.m2/repository/com/smxemail/com.smxemail.rangeresolver/
> > 1.1.34.2-SNAPSHOT/com.smxemail.rangeresolver-1.1.34.2-SNAPSHOT.jar
> > urls[2] =
> >
> >
> file:/Users/amrk/.m2/repository/com/google/guava/guava/31.1-jre/guava-31.1-jre.jar
> > urls[3] =
> >
> >
> file:/Users/amrk/.m2/repository/org/apache/commons/commons-lang3/3.12.0/commons-lang3-3.12.0.jar
> > urls[4] =
> >
> >
> file:/Users/amrk/.m2/repository/org/apache/maven/resolver/maven-resolver-named-locks/1.9.4/maven-resolver-named-locks-1.9.4.jar
> > urls[5] =
> >
> >
> file:/Users/amrk/.m2/repository/org/apache/maven/resolver/maven-resolver-transport-file/1.9.4/maven-resolver-transport-file-1.9.4.jar
> > urls[6] =
> >
> >
> file:/Users/amrk/.m2/repository/org/apache/maven/resolver/maven-resolver-transport-http/1.9.4/maven-resolver-transport-http-1.9.4.jar
> > urls[7] =
> >
> >
> file:/Users/amrk/.m2/repository/org/apache/httpcomponents/httpclient/4.5.13/httpclient-4.5.13.jar
> > urls[8] =
> >
> >
> file:/Users/amrk/.m2/repository/commons-codec/commons-codec/1.11/commons-codec-1.11.jar
> > urls[9] =
> >
> >
> file:/Users/amrk/.m2/repository/org/apache/httpcomponents/httpcore/4.4.15/httpcore-4.4.15.jar
> > urls[10] =
> >
> >
> file:/Users/amrk/.m2/repository/org/slf4j/jcl-over-slf4j/1.7.36/jcl-over-slf4j-1.7.36.jar
> > urls[11] =
> >
> >
> file:/Users/amrk/.m2/repository/org/jetbrains/annotations/23.0.0/annotations-23.0.0.jar
> > urls[12] =
> >
> >
> file:/Users/amrk/.m2/repository/io/vavr/vavr/1.0.0-alpha-4/vavr-1.0.0-alpha-4.jar
> > urls[13] =
> >
> >
> file:/Users/amrk/.m2/repository/org/antlr/antlr4-runtime/4.9.3/antlr4-runtime-4.9.3.jar
> > urls[14] =
> >
> >
> file:/Users/amrk/.m2/repository/org/sonatype/plexus/plexus-sec-dispatcher/1.4/plexus-sec-dispatcher-1.4.jar
> > urls[15] =
> >
> >
> file:/Users/amrk/.m2/repository/org/sonatype/plexus/plexus-cipher/1.4/plexus-cipher-1.4.jar
> > urls[16] =
> >
> >
> file:/Users/amrk/.m2/repository/org/apache/maven/maven-builder-support/3.5.2/maven-builder-support-3.5.2.jar
> > urls[17] =
> >
> >
> file:/Users/amrk/.m2/repository/org/apache/maven/shared/maven-shared-utils/3.1.0/maven-shared-utils-3.1.0.jar
> > urls[18] =
> >
> >
> file:/Users/amrk/.m2/repository/commons-io/commons-io/2.5/commons-io-2.5.jar
> > urls[19] =
> >
> >
> file:/Users/amrk/.m2/repository/org/eclipse/sisu/org.eclipse.sisu.inject/0.3.3/org.eclipse.sisu.inject-0.3.3.jar
> > urls[20] =
> >
> >
> file:/Users/amrk/.m2/repository/com/google/inject/guice/4.0/guice-4.0-no_aop.jar
> > urls[21] =
> >
> >
> file:/Users/amrk/.m2/repository/aopalliance/aopalliance/1.0/aopalliance-1.0.jar
> > urls[22] =
> >
> >
> file:/Users/amrk/.m2/repository/org/codehaus/plexus/plexus-utils/3.1.0/plexus-utils-3.1.0.jar
> > urls[23] =
> >
> >
> file:/Users/amrk/.m2/repository/org/apache/maven/plugin-tools/maven-plugin-annotations/3.5/maven-plugin-annotations-3.5.jar
> > urls[24] =
> >
> >
> file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-api/1.9.5/maven-scm-api-1.9.5.jar
> > urls[25] =
> >
> >
> file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-manager-plexus/1.9.5/maven-scm-manager-plexus-1.9.5.jar
> > urls[26] =
> > file:/Users/amrk/.m2/repository/junit/junit/3.8.1/junit-3.8.1.jar
> > urls[27] =
> >
> >
> file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-providers-standard/1.9.5/maven-scm-providers-standard-1.9.5.pom
> > urls[28] =
> >
> >
> file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-accurev/1.9.5/maven-scm-provider-accurev-1.9.5.jar
> > urls[29] =
> >
> >
> file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-bazaar/1.9.5/maven-scm-provider-bazaar-1.9.5.jar
> > urls[30] =
> >
> >
> file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-clearcase/1.9.5/maven-scm-provider-clearcase-1.9.5.jar
> > urls[31] =
> >
> >
> file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-cvsexe/1.9.5/maven-scm-provider-cvsexe-1.9.5.jar
> > urls[32] =
> >
> >
> file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-cvs-commons/1.9.5/maven-scm-provider-cvs-commons-1.9.5.jar
> > urls[33] =
> >
> >
> file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-cvsjava/1.9.5/maven-scm-provider-cvsjava-1.9.5.jar
> > urls[34] =
> >
> >
> file:/Users/amrk/.m2/repository/org/netbeans/lib/cvsclient/20060125/cvsclient-20060125.jar
> > urls[35] =
> >
> >
> file:/Users/amrk/.m2/repository/ch/ethz/ganymed/ganymed-ssh2/build210/ganymed-ssh2-build210.jar
> > urls[36] =
> >
> >
> file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-gitexe/1.9.5/maven-scm-provider-gitexe-1.9.5.jar
> > urls[37] =
> >
> >
> file:/Users/amrk/.m2/repository/commons-lang/commons-lang/2.6/commons-lang-2.6.jar
> > urls[38] =
> >
> >
> file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-git-commons/1.9.5/maven-scm-provider-git-commons-1.9.5.jar
> > urls[39] =
> >
> >
> file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-jgit/1.9.5/maven-scm-provider-jgit-1.9.5.jar
> > urls[40] =
> > file:/Users/amrk/.m2/repository/org/eclipse/jgit/org.eclipse.jgit/3.7.1.
> > 201504261725-r/org.eclipse.jgit-3.7.1.201504261725-r.jar
> > urls[41] =
> > file:/Users/amrk/.m2/repository/com/jcraft/jsch/0.1.50/jsch-0.1.50.jar
> > urls[42] =
> >
> >
> file:/Users/amrk/.m2/repository/com/googlecode/javaewah/JavaEWAH/0.7.9/JavaEWAH-0.7.9.jar
> > urls[43] =
> >
> >
> file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-hg/1.9.5/maven-scm-provider-hg-1.9.5.jar
> > urls[44] =
> >
> >
> file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-perforce/1.9.5/maven-scm-provider-perforce-1.9.5.jar
> > urls[45] =
> >
> >
> file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-starteam/1.9.5/maven-scm-provider-starteam-1.9.5.jar
> > urls[46] =
> >
> >
> file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-svnexe/1.9.5/maven-scm-provider-svnexe-1.9.5.jar
> > urls[47] =
> >
> >
> file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-svn-commons/1.9.5/maven-scm-provider-svn-commons-1.9.5.jar
> > urls[48] =
> >
> >
> file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-synergy/1.9.5/maven-scm-provider-synergy-1.9.5.jar
> > urls[49] =
> >
> >
> file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-vss/1.9.5/maven-scm-provider-vss-1.9.5.jar
> > urls[50] =
> >
> >
> file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-tfs/1.9.5/maven-scm-provider-tfs-1.9.5.jar
> > urls[51] =
> >
> >
> file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-integrity/1.9.5/maven-scm-provider-integrity-1.9.5.jar
> > urls[52] =
> >
> >
> file:/Users/amrk/.m2/repository/com/mks/api/mksapi-jar/4.10.9049/mksapi-jar-4.10.9049.jar
> > urls[53] =
> >
> >
> file:/Users/amrk/.m2/repository/org/codehaus/groovy/groovy-all/1.7.6/groovy-all-1.7.6.jar
> > urls[54] =
> >
> >
> file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-jazz/1.9.5/maven-scm-provider-jazz-1.9.5.jar
> > urls[55] =
> >
> >
> file:/Users/amrk/.m2/repository/org/apache/maven/shared/maven-filtering/1.3/maven-filtering-1.3.jar
> > urls[56] =
> >
> >
> file:/Users/amrk/.m2/repository/backport-util-concurrent/backport-util-concurrent/3.1/backport-util-concurrent-3.1.jar
> > urls[57] =
> >
> >
> file:/Users/amrk/.m2/repository/org/codehaus/plexus/plexus-interpolation/1.19/plexus-interpolation-1.19.jar
> > urls[58] =
> >
> >
> file:/Users/amrk/.m2/repository/org/sonatype/plexus/plexus-build-api/0.0.4/plexus-build-api-0.0.4.jar
> > urls[59] =
> >
> >
> file:/Users/amrk/.m2/repository/org/codehaus/plexus/plexus-component-annotations/1.7.1/plexus-component-annotations-1.7.1.jar
> > urls[60] =
> >
> >
> file:/Users/amrk/.m2/repository/javax/enterprise/cdi-api/1.0/cdi-api-1.0.jar
> > urls[61] =
> >
> >
> file:/Users/amrk/.m2/repository/javax/annotation/jsr250-api/1.0/jsr250-api-1.0.jar
> > urls[62] =
> > file:/Users/amrk/.m2/repository/org/jdom/jdom2/2.0.6.1/jdom2-2.0.6.1.jar
> > Number of foreign imports: 1
> > import: Entry[import from realm
> >
> ClassRealm[project>com.smxemail:rangeresolver-maven-plugin:1.1.59-SNAPSHOT,
> >
> > parent: ClassRealm[maven.api, parent: null]]]
> > ```
> >
> > Mark
> >
> >
> >
> >
> >
> >
> > On 24 Jan 2023, at 21:22, Tamás Cservenák wrote:
> >
> > > Mark,
> > >
> > > Can you provide more information about this error?
> > >
> > > I understand if this plugin is internal (not OSS), but can you provide
> > > me
> > >
> > > the POM of it, or at least the dependencies snippet related to Maven
> > > and
> > >
> > > resolver?
> > >
> > > "A required class is missing" is strange, especially as
> > >
> > > BasicRepositoryConnectorFactory is provided by Maven itself?
> > >
> > > Thanks
> > >
> > > Tamas
> >
> >
> > ---
> > "The ease with which a change can be implemented has no relevance at all
> > to whether it is the right change for the (Java) Platform for all time."
> > — Mark Reinhold.
> >
> > Mark Derricutt
> > http://www.chaliceofblood.net
> > http://www.theoryinpractice.net
> > http://twitter.com/talios
> > http://facebook.com/mderricutt
> >
>
Re: Maven 3.9,0 plan
Posted by Tamás Cservenák <ta...@cservenak.net>.
Ok, I'll take a look. Mark, can you direct me to the source code?
But just as a starting point: within Maven, why are you "booting" a
completely new resolver instance using ServiceLocator?
But the best would be to have access to the sources....
Thanks
T
On Thu, Feb 2, 2023 at 4:55 AM Mark Derricutt <ma...@talios.com> wrote:
> Following up on this. I removed all the [] deps from my plugin but
> still seem to get the same issue of the class missing.
>
> I definitely see the class in my maven 3.9-staged/lib directory, and
> have even updated the dependency version in my plugin to match.
>
> The code in question that's failing is the creation of the Aether
> repository system - it's possible this has changed:
>
> ```
> private static RepositorySystem newRepositorySystem() {
> DefaultServiceLocator locator =
> MavenRepositorySystemUtils.newServiceLocator();
> locator.addService(RepositoryConnectorFactory.class,
> BasicRepositoryConnectorFactory.class);
> locator.addService(TransporterFactory.class,
> FileTransporterFactory.class);
> locator.addService(TransporterFactory.class,
> HttpTransporterFactory.class);
> return locator.getService(RepositorySystem.class);
> }
> ```
>
> and trace was:
>
> ```
> at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo
> (DefaultBuildPluginManager.java:149)
> at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute2
> (MojoExecutor.java:341)
> at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute
> (MojoExecutor.java:329)
> at org.apache.maven.lifecycle.internal.MojoExecutor.execute
> (MojoExecutor.java:212)
> at org.apache.maven.lifecycle.internal.MojoExecutor.execute
> (MojoExecutor.java:174)
> at org.apache.maven.lifecycle.internal.MojoExecutor.access$000
> (MojoExecutor.java:75)
> at org.apache.maven.lifecycle.internal.MojoExecutor$1.run
> (MojoExecutor.java:162)
> at org.apache.maven.plugin.DefaultMojosExecutionStrategy.execute
> (DefaultMojosExecutionStrategy.java:37)
> at org.apache.maven.lifecycle.internal.MojoExecutor.execute
> (MojoExecutor.java:159)
> at
> org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject
> (LifecycleModuleBuilder.java:104)
> at
> org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject
> (LifecycleModuleBuilder.java:72)
> at
> org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build
>
> (SingleThreadedBuilder.java:52)
> at org.apache.maven.lifecycle.internal.LifecycleStarter.execute
> (LifecycleStarter.java:117)
> at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:259)
> at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:171)
> at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:99)
> at org.apache.maven.cli.MavenCli.execute (MavenCli.java:820)
> at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:269)
> at org.apache.maven.cli.MavenCli.main (MavenCli.java:191)
> at sun.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke
> (NativeMethodAccessorImpl.java:62)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke
> (DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke (Method.java:498)
> at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced
> (Launcher.java:282)
> at org.codehaus.plexus.classworlds.launcher.Launcher.launch
> (Launcher.java:225)
> at
> org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode
> (Launcher.java:406)
> at org.codehaus.plexus.classworlds.launcher.Launcher.main
> (Launcher.java:347)
> Caused by: java.lang.NoClassDefFoundError:
> org/eclipse/aether/connector/basic/BasicRepositoryConnectorFactory
> at
> com.smxemail.rangeresolver.lang.RepositoryResolver.newRepositorySystem
> (RepositoryResolver.java:123)
> at com.smxemail.rangeresolver.lang.RepositoryResolver.<init>
> (RepositoryResolver.java:108)
> at
> com.smxemail.rangeresolver.lang.RepositoryResolver.createRepositoryResolver
>
> (RepositoryResolver.java:118)
> at com.smxemail.rangeresolver.mojo.RangeResolverMojo.execute
> (RangeResolverMojo.java:113)
> at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo
> (DefaultBuildPluginManager.java:125)
> at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute2
> (MojoExecutor.java:341)
> at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute
> (MojoExecutor.java:329)
> at org.apache.maven.lifecycle.internal.MojoExecutor.execute
> (MojoExecutor.java:212)
> at org.apache.maven.lifecycle.internal.MojoExecutor.execute
> (MojoExecutor.java:174)
> at org.apache.maven.lifecycle.internal.MojoExecutor.access$000
> (MojoExecutor.java:75)
> at org.apache.maven.lifecycle.internal.MojoExecutor$1.run
> (MojoExecutor.java:162)
> at org.apache.maven.plugin.DefaultMojosExecutionStrategy.execute
> (DefaultMojosExecutionStrategy.java:37)
> at org.apache.maven.lifecycle.internal.MojoExecutor.execute
> (MojoExecutor.java:159)
> at
> org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject
> (LifecycleModuleBuilder.java:104)
> at
> org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject
> (LifecycleModuleBuilder.java:72)
> at
> org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build
>
> (SingleThreadedBuilder.java:52)
> at org.apache.maven.lifecycle.internal.LifecycleStarter.execute
> (LifecycleStarter.java:117)
> at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:259)
> at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:171)
> at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:99)
> at org.apache.maven.cli.MavenCli.execute (MavenCli.java:820)
> at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:269)
> at org.apache.maven.cli.MavenCli.main (MavenCli.java:191)
> at sun.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke
> (NativeMethodAccessorImpl.java:62)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke
> (DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke (Method.java:498)
> at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced
> (Launcher.java:282)
> at org.codehaus.plexus.classworlds.launcher.Launcher.launch
> (Launcher.java:225)
> at
> org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode
> (Launcher.java:406)
> at org.codehaus.plexus.classworlds.launcher.Launcher.main
> (Launcher.java:347)
> Caused by: java.lang.ClassNotFoundException:
> org.eclipse.aether.connector.basic.BasicRepositoryConnectorFactory
> 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
> com.smxemail.rangeresolver.lang.RepositoryResolver.newRepositorySystem
> (RepositoryResolver.java:123)
> at com.smxemail.rangeresolver.lang.RepositoryResolver.<init>
> (RepositoryResolver.java:108)
> at
> com.smxemail.rangeresolver.lang.RepositoryResolver.createRepositoryResolver
>
> (RepositoryResolver.java:118)
> ```
>
> I see the class is included in the `maven-resolver-impl-1.9.4.jar` file
> but that doesn't appear to be in the class path:
>
>
> ```
> at org.codehaus.plexus.classworlds.launcher.Launcher.main
> (Launcher.java:347)
> Caused by: org.apache.maven.plugin.PluginContainerException: A required
> class was missing while executing
> com.smxemail:rangeresolver-maven-plugin:1.1.59-SNAPSHOT:resolve-deps:
> org/eclipse/aether/connector/basic/BasicRepo
> -----------------------------------------------------
> realm =
> plugin>com.smxemail:rangeresolver-maven-plugin:1.1.59-SNAPSHOT
> strategy = org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy
> urls[0] =
>
> file:/Users/amrk/.m2/repository/com/smxemail/rangeresolver-maven-plugin/1.1.59-SNAPSHOT/rangeresolver-maven-plugin-1.1.59-SNAPSHOT.jar
> urls[1] =
> file:/Users/amrk/.m2/repository/com/smxemail/com.smxemail.rangeresolver/
> 1.1.34.2-SNAPSHOT/com.smxemail.rangeresolver-1.1.34.2-SNAPSHOT.jar
> urls[2] =
>
> file:/Users/amrk/.m2/repository/com/google/guava/guava/31.1-jre/guava-31.1-jre.jar
> urls[3] =
>
> file:/Users/amrk/.m2/repository/org/apache/commons/commons-lang3/3.12.0/commons-lang3-3.12.0.jar
> urls[4] =
>
> file:/Users/amrk/.m2/repository/org/apache/maven/resolver/maven-resolver-named-locks/1.9.4/maven-resolver-named-locks-1.9.4.jar
> urls[5] =
>
> file:/Users/amrk/.m2/repository/org/apache/maven/resolver/maven-resolver-transport-file/1.9.4/maven-resolver-transport-file-1.9.4.jar
> urls[6] =
>
> file:/Users/amrk/.m2/repository/org/apache/maven/resolver/maven-resolver-transport-http/1.9.4/maven-resolver-transport-http-1.9.4.jar
> urls[7] =
>
> file:/Users/amrk/.m2/repository/org/apache/httpcomponents/httpclient/4.5.13/httpclient-4.5.13.jar
> urls[8] =
>
> file:/Users/amrk/.m2/repository/commons-codec/commons-codec/1.11/commons-codec-1.11.jar
> urls[9] =
>
> file:/Users/amrk/.m2/repository/org/apache/httpcomponents/httpcore/4.4.15/httpcore-4.4.15.jar
> urls[10] =
>
> file:/Users/amrk/.m2/repository/org/slf4j/jcl-over-slf4j/1.7.36/jcl-over-slf4j-1.7.36.jar
> urls[11] =
>
> file:/Users/amrk/.m2/repository/org/jetbrains/annotations/23.0.0/annotations-23.0.0.jar
> urls[12] =
>
> file:/Users/amrk/.m2/repository/io/vavr/vavr/1.0.0-alpha-4/vavr-1.0.0-alpha-4.jar
> urls[13] =
>
> file:/Users/amrk/.m2/repository/org/antlr/antlr4-runtime/4.9.3/antlr4-runtime-4.9.3.jar
> urls[14] =
>
> file:/Users/amrk/.m2/repository/org/sonatype/plexus/plexus-sec-dispatcher/1.4/plexus-sec-dispatcher-1.4.jar
> urls[15] =
>
> file:/Users/amrk/.m2/repository/org/sonatype/plexus/plexus-cipher/1.4/plexus-cipher-1.4.jar
> urls[16] =
>
> file:/Users/amrk/.m2/repository/org/apache/maven/maven-builder-support/3.5.2/maven-builder-support-3.5.2.jar
> urls[17] =
>
> file:/Users/amrk/.m2/repository/org/apache/maven/shared/maven-shared-utils/3.1.0/maven-shared-utils-3.1.0.jar
> urls[18] =
>
> file:/Users/amrk/.m2/repository/commons-io/commons-io/2.5/commons-io-2.5.jar
> urls[19] =
>
> file:/Users/amrk/.m2/repository/org/eclipse/sisu/org.eclipse.sisu.inject/0.3.3/org.eclipse.sisu.inject-0.3.3.jar
> urls[20] =
>
> file:/Users/amrk/.m2/repository/com/google/inject/guice/4.0/guice-4.0-no_aop.jar
> urls[21] =
>
> file:/Users/amrk/.m2/repository/aopalliance/aopalliance/1.0/aopalliance-1.0.jar
> urls[22] =
>
> file:/Users/amrk/.m2/repository/org/codehaus/plexus/plexus-utils/3.1.0/plexus-utils-3.1.0.jar
> urls[23] =
>
> file:/Users/amrk/.m2/repository/org/apache/maven/plugin-tools/maven-plugin-annotations/3.5/maven-plugin-annotations-3.5.jar
> urls[24] =
>
> file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-api/1.9.5/maven-scm-api-1.9.5.jar
> urls[25] =
>
> file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-manager-plexus/1.9.5/maven-scm-manager-plexus-1.9.5.jar
> urls[26] =
> file:/Users/amrk/.m2/repository/junit/junit/3.8.1/junit-3.8.1.jar
> urls[27] =
>
> file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-providers-standard/1.9.5/maven-scm-providers-standard-1.9.5.pom
> urls[28] =
>
> file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-accurev/1.9.5/maven-scm-provider-accurev-1.9.5.jar
> urls[29] =
>
> file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-bazaar/1.9.5/maven-scm-provider-bazaar-1.9.5.jar
> urls[30] =
>
> file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-clearcase/1.9.5/maven-scm-provider-clearcase-1.9.5.jar
> urls[31] =
>
> file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-cvsexe/1.9.5/maven-scm-provider-cvsexe-1.9.5.jar
> urls[32] =
>
> file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-cvs-commons/1.9.5/maven-scm-provider-cvs-commons-1.9.5.jar
> urls[33] =
>
> file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-cvsjava/1.9.5/maven-scm-provider-cvsjava-1.9.5.jar
> urls[34] =
>
> file:/Users/amrk/.m2/repository/org/netbeans/lib/cvsclient/20060125/cvsclient-20060125.jar
> urls[35] =
>
> file:/Users/amrk/.m2/repository/ch/ethz/ganymed/ganymed-ssh2/build210/ganymed-ssh2-build210.jar
> urls[36] =
>
> file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-gitexe/1.9.5/maven-scm-provider-gitexe-1.9.5.jar
> urls[37] =
>
> file:/Users/amrk/.m2/repository/commons-lang/commons-lang/2.6/commons-lang-2.6.jar
> urls[38] =
>
> file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-git-commons/1.9.5/maven-scm-provider-git-commons-1.9.5.jar
> urls[39] =
>
> file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-jgit/1.9.5/maven-scm-provider-jgit-1.9.5.jar
> urls[40] =
> file:/Users/amrk/.m2/repository/org/eclipse/jgit/org.eclipse.jgit/3.7.1.
> 201504261725-r/org.eclipse.jgit-3.7.1.201504261725-r.jar
> urls[41] =
> file:/Users/amrk/.m2/repository/com/jcraft/jsch/0.1.50/jsch-0.1.50.jar
> urls[42] =
>
> file:/Users/amrk/.m2/repository/com/googlecode/javaewah/JavaEWAH/0.7.9/JavaEWAH-0.7.9.jar
> urls[43] =
>
> file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-hg/1.9.5/maven-scm-provider-hg-1.9.5.jar
> urls[44] =
>
> file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-perforce/1.9.5/maven-scm-provider-perforce-1.9.5.jar
> urls[45] =
>
> file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-starteam/1.9.5/maven-scm-provider-starteam-1.9.5.jar
> urls[46] =
>
> file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-svnexe/1.9.5/maven-scm-provider-svnexe-1.9.5.jar
> urls[47] =
>
> file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-svn-commons/1.9.5/maven-scm-provider-svn-commons-1.9.5.jar
> urls[48] =
>
> file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-synergy/1.9.5/maven-scm-provider-synergy-1.9.5.jar
> urls[49] =
>
> file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-vss/1.9.5/maven-scm-provider-vss-1.9.5.jar
> urls[50] =
>
> file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-tfs/1.9.5/maven-scm-provider-tfs-1.9.5.jar
> urls[51] =
>
> file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-integrity/1.9.5/maven-scm-provider-integrity-1.9.5.jar
> urls[52] =
>
> file:/Users/amrk/.m2/repository/com/mks/api/mksapi-jar/4.10.9049/mksapi-jar-4.10.9049.jar
> urls[53] =
>
> file:/Users/amrk/.m2/repository/org/codehaus/groovy/groovy-all/1.7.6/groovy-all-1.7.6.jar
> urls[54] =
>
> file:/Users/amrk/.m2/repository/org/apache/maven/scm/maven-scm-provider-jazz/1.9.5/maven-scm-provider-jazz-1.9.5.jar
> urls[55] =
>
> file:/Users/amrk/.m2/repository/org/apache/maven/shared/maven-filtering/1.3/maven-filtering-1.3.jar
> urls[56] =
>
> file:/Users/amrk/.m2/repository/backport-util-concurrent/backport-util-concurrent/3.1/backport-util-concurrent-3.1.jar
> urls[57] =
>
> file:/Users/amrk/.m2/repository/org/codehaus/plexus/plexus-interpolation/1.19/plexus-interpolation-1.19.jar
> urls[58] =
>
> file:/Users/amrk/.m2/repository/org/sonatype/plexus/plexus-build-api/0.0.4/plexus-build-api-0.0.4.jar
> urls[59] =
>
> file:/Users/amrk/.m2/repository/org/codehaus/plexus/plexus-component-annotations/1.7.1/plexus-component-annotations-1.7.1.jar
> urls[60] =
>
> file:/Users/amrk/.m2/repository/javax/enterprise/cdi-api/1.0/cdi-api-1.0.jar
> urls[61] =
>
> file:/Users/amrk/.m2/repository/javax/annotation/jsr250-api/1.0/jsr250-api-1.0.jar
> urls[62] =
> file:/Users/amrk/.m2/repository/org/jdom/jdom2/2.0.6.1/jdom2-2.0.6.1.jar
> Number of foreign imports: 1
> import: Entry[import from realm
> ClassRealm[project>com.smxemail:rangeresolver-maven-plugin:1.1.59-SNAPSHOT,
>
> parent: ClassRealm[maven.api, parent: null]]]
> ```
>
> Mark
>
>
>
>
>
>
> On 24 Jan 2023, at 21:22, Tamás Cservenák wrote:
>
> > Mark,
> >
> > Can you provide more information about this error?
> >
> > I understand if this plugin is internal (not OSS), but can you provide
> > me
> >
> > the POM of it, or at least the dependencies snippet related to Maven
> > and
> >
> > resolver?
> >
> > "A required class is missing" is strange, especially as
> >
> > BasicRepositoryConnectorFactory is provided by Maven itself?
> >
> > Thanks
> >
> > Tamas
>
>
> ---
> "The ease with which a change can be implemented has no relevance at all
> to whether it is the right change for the (Java) Platform for all time."
> — Mark Reinhold.
>
> Mark Derricutt
> http://www.chaliceofblood.net
> http://www.theoryinpractice.net
> http://twitter.com/talios
> http://facebook.com/mderricutt
>