On Thu, 31 Aug 2017 15:00:36 +0200, Stuart McCulloch <mccu...@gmail.com> wrote:

Hi,

A bit of background first - ClassRealm has two different different concepts of class loading hierarchy:

1) the base class loader passed into the constructor, which is passed onto the URLClassLoader superclass

2) the ‘parent’ class loader set via setParentClassLoader / setParentRealm

Now 1) doesn’t have any filtering applied, any class or resource requests are delegated straight to the base class loader before checking the realm and its parent/imports

Whereas 2) does have filtering applied, as configured via importFromParent, and is checked after the base loader (the subsequent order depends on the realm strategy)

So technically there is a potential change of behaviour by setting PARENT_CLASS_LOADER as the base loader 1) because it won’t have any parent import filtering.

This was my understanding as well. So originally we passed 'null', meaning it should JVM Bootstrap. However, with Java8 the Java extensions like nashorn are not part of the bootstrap classloader, but the system classloader. IIUC PARENT_CLASSLOADER is the ClassWorld classloader on top op the system classloader. If this is all still true, then I don't understand why my original fix didn't work. Also, as long as ClassWorld doesn't have any third-party dependencies, we should be safe, right?

thanks,
Robert


But looking at the call hierarchy for createRealm it turns out that Maven doesn’t use parent import filtering, so in practice this doesn’t change that particular behaviour.

( however if other external users of ClassRealmManager.createPluginRealm rely on parent filtering then they could potentially be affected )

A more significant difference is that parent delegation will now happen before checking the realm and its imports, whereas before the strategy was “self-first” with imports and the current realm being checked before the parent - as Igor mentioned this could potentially lead to classpath collisions/incompatibilities if PARENT_CLASS_LOADER contains common third-party libraries. This won’t affect CLI usage, it’s more an issue for people embedding Maven - but they could always add their own filtering to stop classes/resources leaking to Maven.

Also as Igor mentioned, if you’re going to use the parent as the base class loader then you don’t need to call setParentClassLoader for the same parent - so the realm manager code could be simplified. Maybe “newRealm” could take a parent argument and that could be used to decide what to use for the base class loader (atm it doesn’t have that information to hand)

But as a first step this one-line change looks ok, as long as we give integrators a heads-up so they can test the snapshot / early release candidate.

--
Cheers, Stuart


On Thursday, 31 August 2017 at 10:18, Stephen Connolly wrote:

I have rebased and squashed the commit: https://github.com/apache/maven/compare/mng-6275

The tests should still pass: https://builds.apache.org/blue/organizations/jenkins/maven-3.x-jenkinsfile/detail/mng-6275/4/pipeline

So just need the code review from Stuart and Igor and then I think we are good to merge...

On 31 August 2017 at 01:27, Robert Scholte <rfscho...@apache.org (mailto:rfscho...@apache.org)> wrote:
> Cool
>
>
> On Wed, 30 Aug 2017 23:22:14 +0200, Stephen Connolly <stephen.alan.conno...@gmail.com (mailto:stephen.alan.conno...@gmail.com)> wrote:
>
> > Unit test is still present in my branch, so should be a yes (if your unit
> > test works)
> >
> > On Wed 30 Aug 2017 at 21:50, Robert Scholte <rfscho...@apache.org (mailto:rfscho...@apache.org)> wrote:
> >
> > > But can you access classes via the ServiceLoader?
> > >
> > > On Wed, 30 Aug 2017 22:48:40 +0200, Stephen Connolly
> > > <stephen.alan.conno...@gmail.com (mailto:stephen.alan.conno...@gmail.com)> wrote:
> > >
> > > > Oh wow!
> > > >
> > > https://builds.apache.org/blue/organizations/jenkins/maven-3.x-jenkinsfile/detail/mng-6275/3/pipeline
> > > >
> > > > Can we get Stuart and Igor to review:
> > > > https://github.com/apache/maven/compare/mng-6275
> > > >
> > > > Seems almost too easy!
> > > >
> > > >
> > > >
> > > > On 30 August 2017 at 17:02, Robert Scholte <rfscho...@apache.org (mailto:rfscho...@apache.org)> wrote:
> > > >
> > > >> I agree
> > > >>
> > > >>
> > > >> On Wed, 30 Aug 2017 18:01:12 +0200, Stephen Connolly <
> > > >> stephen.alan.conno...@gmail.com (mailto:stephen.alan.conno...@gmail.com)> wrote:
> > > >>
> > > >> I think we'll de-scope 6275 for 3.5.1
> > > >>>
> > > >>>
> > > >>>
> > > >>>
> > > >>> On Wed 30 Aug 2017 at 16:04, Stephen Connolly <
> > > >>> stephen.alan.conno...@gmail.com (mailto:stephen.alan.conno...@gmail.com)> wrote:
> > > >>>
> > > >>> Hmmm... looking like we may have to descope MNG-6275... I'll do some
> > > >>> more
> > > >>>> digging first though
> > > >>>>
> > > >>>>
> > > >>>> On 30 August 2017 at 04:34, Stephen Connolly <
> > > >>>> stephen.alan.conno...@gmail.com (mailto:stephen.alan.conno...@gmail.com)> wrote:
> > > >>>>
> > > >>>> fef668789f6abe79f603b96a8ee6f13ea52de4df should verify if that fixes
> > > >>>>> things
> > > >>>>>
> > > >>>>> On 30 August 2017 at 04:13, Stuart McCulloch <mccu...@gmail.com (mailto:mccu...@gmail.com)>
> > > >>>>> wrote:
> > > >>>>>
> > > >>>>> On Wednesday, 30 August 2017 at 10:26, Stephen Connolly wrote:
> > > >>>>>> >
> > > >>>>>> https://github.com/apache/maven/commit/39004f6aee634a0ac6daa
> > > >>>>>> 1f99add299ff439f5ec
> > > >>>>>> > should fix
> > > >>>>>> >
> > > >>>>>> >
> > > >>>>>>
> > > >>>>>> Is it worth storing the chosen context/system loader in a member > > > >>>>>> variable, or maybe even statically like PARENT_CLASSLOADER, rather
> > > >>>>>> than
> > > >>>>>> checking each time?
> > > >>>>>>
> > > >>>>>> This would also avoid the off-chance that something changes the
> > > >>>>>> thread’s
> > > >>>>>> context loader during the build which could then influence
> > > >>>>>> subsequent
> > > >>>>>> calls
> > > >>>>>> to “newRealm”.
> > > >>>>>>
> > > >>>>>> (IIUC when embedding we’d expect the context loader to be set
> > > >>>>>> correctly
> > > >>>>>> during construction of the realm manager, and that same loader
> > > >>>>>> should
> > > >>>>>> then
> > > >>>>>> be used for all realms)
> > > >>>>>> > On 30 August 2017 at 02:09, Robert Scholte <rfscho...@apache.org (mailto:rfscho...@apache.org)
> > > >>>>>> (mailto:rfscho...@apache.org)> wrote:
> > > >>>>>> >
> > > >>>>>> > > Now that the ITs are all in place again it is good to see that
> > > >>>>>> these
> > > >>>>>> > > failures reflect the concerns of Igor.
> > > >>>>>> > > Originally this issue said it was Java 9 related, but this is a
> > > >>>>>> Java
> > > >>>>>> 8
> > > >>>>>> > > issue as well, so there's no real need to include it for 3.5.1
> > > >>>>>> > > I'll revert this commit and reopen the issue.
> > > >>>>>> > > Future analysis must answer the question where and how the
> > > >>>>>> classloading
> > > >>>>>> > > must be improved.
> > > >>>>>> > >
> > > >>>>>> > > Robert
> > > >>>>>> > >
> > > >>>>>> > >
> > > >>>>>> > > On Wed, 30 Aug 2017 01:57:02 +0200, Stephen Connolly <
> > > >>>>>> > > stephen.alan.conno...@gmail.com (mailto:stephen.alan.conno...@gmail.com) (mailto: > > > >>>>>> stephen.alan.conno...@gmail.com (mailto:stephen.alan.conno...@gmail.com))> wrote:
> > > >>>>>> > >
> > > >>>>>> > > Ok, looking a the results of the bisect-0 through bisect-3
> > > >>>>>> builds,
> > > >>>>>> 0
> > > >>>>>> and 1
> > > >>>>>> > > > both fail just for the MNG-6127 integration tests, bisect-2
> > > >>>>>> adds
> > > >>>>>> the fix
> > > >>>>>> > > > for MNG-6127, so the build passes... bisect-3 also passes, so
> > > >>>>>> the
> > > >>>>>> smoking
> > > >>>>>> > > > gun is...
> > > >>>>>> > > >
> > > >>>>>> > > > https://github.com/apache/maven/commit/f047ea143766fd22ae420
> > > >>>>>> > > > 40e6805bef287f3cc3e
> > > >>>>>> > > >
> > > >>>>>> > > > On 29 August 2017 at 22:17, Stephen Connolly <
> > > >>>>>> > > > stephen.alan.conno...@gmail.com (mailto:stephen.alan.conno...@gmail.com) (mailto: > > > >>>>>> stephen.alan.conno...@gmail.com (mailto:stephen.alan.conno...@gmail.com))> wrote:
> > > >>>>>> > > >
> > > >>>>>> > > > bisect-0 is the last known good commit with the Jenkinsfile
> > > >>>>>> fix
> > > >>>>>> to
> > > >>>>>> confirm
> > > >>>>>> > > > > that the failures are not another infra related change
> > > >>>>>> > > > >
> > > >>>>>> > > > > On 29 August 2017 at 22:13, Stephen Connolly
> > > >>>>>> > > > > <stephen.alan.connolly@gmail.
> > > >>>>>> > > > > com> wrote:
> > > >>>>>> > > > >
> > > >>>>>> > > > > I have pushed bisect-1, bisect-2 and bisect-3 to see if we
> > > >>>>>> can
> > > >>>>>> identify
> > > >>>>>> > > > > > the problematic commit since the last known good build of
> > > >>>>>> master (#123
> > > >>>>>> > > > > > for
> > > >>>>>> > > > > > commit 4f2a2dba89251d9045fe9944783509a397491da3)
> > > >>>>>> > > > > >
> > > >>>>>> > > > > > On 29 August 2017 at 22:09, Stephen Connolly <
> > > >>>>>> > > > > > stephen.alan.conno...@gmail.com (mailto:stephen.alan.conno...@gmail.com) (mailto: > > > >>>>>> stephen.alan.conno...@gmail.com (mailto:stephen.alan.conno...@gmail.com))> wrote:
> > > >>>>>> > > > > >
> > > >>>>>> > > > > > Failure is in testBootstrap, probably something obvious,
> > > >>>>>> here's the
> > > >>>>>> > > > > > > problematic build log... you can inspect for yourself at
> > > >>>>>> > > > > > >
> > > >>>>>> https://builds.apache.org/blue/organizations/jenkins/mave
> > > >>>>>> > > > > > > n-3.x-jenkinsfile/detail/master/128/tests but there is
> > > >>>>>> no
> > > >>>>>> point in
> > > >>>>>> > > > > > > looking at any tests other than testBootstrap as if that
> > > >>>>>> fails
> > > >>>>>> > > > > > > everything
> > > >>>>>> > > > > > > else will fail too
> > > >>>>>> > > > > > >
> > > >>>>>> > > > > > > [WARNING] Error injecting:
> > > >>>>>> org.apache.maven.plugins.depen
> > > >>>>>> > > > > > > dency.resolvers.ResolvePluginsMojo
> > > >>>>>> > > > > > > com.google.inject.ProvisionException: Unable to
> > > >>>>>> provision,
> > > >>>>>> see the
> > > >>>>>> > > > > > > following errors:
> > > >>>>>> > > > > > > 1) No implementation for org.apache.maven.artifact.hand
> > > >>>>>> > > > > > > ler.manager.ArtifactHandlerManager was bound.
> > > >>>>>> > > > > > > while locating org.apache.maven.plugins.depen
> > > >>>>>> > > > > > > dency.resolvers.ResolvePluginsMojo
> > > >>>>>> > > > > > > 1 error
> > > >>>>>> > > > > > > at
> > > >>>>>> com.google.inject.internal.InjectorImpl$2.get(InjectorImpl.j
> > > >>>>>> > > > > > > ava:1025)
> > > >>>>>> > > > > > > at
> > > >>>>>> com.google.inject.internal.InjectorImpl.getInstance(Injector
> > > >>>>>> > > > > > > Impl.java:1051)
> > > >>>>>> > > > > > > at
> > > >>>>>> org.eclipse.sisu.space.AbstractDeferredClass.get(AbstractDef
> > > >>>>>> > > > > > > erredClass.java:48)
> > > >>>>>> > > > > > > at com.google.inject.internal.Pro (http://com.google.inject.internal.Pro)
> > > >>>>>> viderInternalFactory.provision
> > > >>>>>> > > > > > > (ProviderInternalFactory.java:81)
> > > >>>>>> > > > > > > at com.google.inject.internal.Int (http://com.google.inject.internal.Int)
> > > >>>>>> ernalFactoryToInitializableAda
> > > >>>>>> > > > > > >
> > > >>>>>> pter.provision(InternalFactoryToInitializableAdapter.java:
> > > >>>>>> 53)
> > > >>>>>> > > > > > > at com.google.inject.internal.Pro (http://com.google.inject.internal.Pro)
> > > >>>>>> viderInternalFactory$1.call(Pr
> > > >>>>>> > > > > > > oviderInternalFactory.java:65)
> > > >>>>>> > > > > > > at com.google.inject.internal.Pro (http://com.google.inject.internal.Pro)
> > > >>>>>> visionListenerStackCallback$Pr
> > > >>>>>> > > > > > >
> > > >>>>>> ovision.provision(ProvisionListenerStackCallback.java:115)
> > > >>>>>> > > > > > > at com.google.inject.internal.Pro (http://com.google.inject.internal.Pro)
> > > >>>>>> visionListenerStackCallback$Pr
> > > >>>>>> > > > > > >
> > > >>>>>> ovision.provision(ProvisionListenerStackCallback.java:133)
> > > >>>>>> > > > > > > at
> > > >>>>>> com.google.inject.internal.ProvisionListenerStackCallback.pr (http://com.google.inject.internal.ProvisionListenerStackCallback.pr)
> > > >>>>>> > > > > > > ovision(ProvisionListenerStackCallback.java:68)
> > > >>>>>> > > > > > > at com.google.inject.internal.Pro (http://com.google.inject.internal.Pro)
> > > >>>>>> viderInternalFactory.circularG
> > > >>>>>> > > > > > > et(ProviderInternalFactory.java:63)
> > > >>>>>> > > > > > > at com.google.inject.internal.Int (http://com.google.inject.internal.Int)
> > > >>>>>> ernalFactoryToInitializableAda
> > > >>>>>> > > > > > > pter.get(InternalFactoryToInitializableAdapter.java:45)
> > > >>>>>> > > > > > > at
> > > >>>>>> com.google.inject.internal.InjectorImpl$2$1.call(InjectorImp
> > > >>>>>> > > > > > > l.java:1016)
> > > >>>>>> > > > > > > at
> > > >>>>>> com.google.inject.internal.InjectorImpl.callInContext(Inject
> > > >>>>>> > > > > > > orImpl.java:1092)
> > > >>>>>> > > > > > > at
> > > >>>>>> com.google.inject.internal.InjectorImpl$2.get(InjectorImpl.j
> > > >>>>>> > > > > > > ava:1012)
> > > >>>>>> > > > > > > at org.eclipse.sisu.inject.Guice4$1.get(Guice4.java:162)
> > > >>>>>> > > > > > > at
> > > >>>>>> org.eclipse.sisu.inject.LazyBeanEntry.getValue(LazyBeanEntry
> > > >>>>>> > > > > > > .java:81)
> > > >>>>>> > > > > > > at
> > > >>>>>> org.eclipse.sisu.plexus.LazyPlexusBean.getValue(LazyPlexusBe
> > > >>>>>> > > > > > > an.java:51)
> > > >>>>>> > > > > > > at
> > > >>>>>> org.codehaus.plexus.DefaultPlexusContainer.lookup(DefaultPle
> > > >>>>>> > > > > > > xusContainer.java:263)
> > > >>>>>> > > > > > > at
> > > >>>>>> org.codehaus.plexus.DefaultPlexusContainer.lookup(DefaultPle
> > > >>>>>> > > > > > > xusContainer.java:255)
> > > >>>>>> > > > > > > at
> > > >>>>>> org.apache.maven.plugin.internal.DefaultMavenPluginManager.g > > > >>>>>> > > > > > > etConfiguredMojo(DefaultMavenPluginManager.java:519)
> > > >>>>>> > > > > > > at
> > > >>>>>> org.apache.maven.plugin.DefaultBuildPluginManager.executeMoj
> > > >>>>>> > > > > > > o(DefaultBuildPluginManager.java:124)
> > > >>>>>> > > > > > > at org.apache.maven.lifecycle.int (http://org.apache.maven.lifecycle.int)
> > > >>>>>> ernal.MojoExecutor.execute(Moj
> > > >>>>>> > > > > > > oExecutor.java:208)
> > > >>>>>> > > > > > > at org.apache.maven.lifecycle.int (http://org.apache.maven.lifecycle.int)
> > > >>>>>> ernal.MojoExecutor.execute(Moj
> > > >>>>>> > > > > > > oExecutor.java:154)
> > > >>>>>> > > > > > > at org.apache.maven.lifecycle.int (http://org.apache.maven.lifecycle.int)
> > > >>>>>> ernal.MojoExecutor.execute(Moj
> > > >>>>>> > > > > > > oExecutor.java:146)
> > > >>>>>> > > > > > > at org.apache.maven.lifecycle.int (http://org.apache.maven.lifecycle.int)
> > > >>>>>> ernal.LifecycleModuleBuilder.b
> > > >>>>>> > > > > > > uildProject(LifecycleModuleBuilder.java:117)
> > > >>>>>> > > > > > > at org.apache.maven.lifecycle.int (http://org.apache.maven.lifecycle.int)
> > > >>>>>> ernal.LifecycleModuleBuilder.b
> > > >>>>>> > > > > > > uildProject(LifecycleModuleBuilder.java:81)
> > > >>>>>> > > > > > > at org.apache.maven.lifecycle.int (http://org.apache.maven.lifecycle.int)
> > > >>>>>> ernal.builder.singlethreaded.S
> > > >>>>>> > > > > > >
> > > >>>>>> ingleThreadedBuilder.build(SingleThreadedBuilder.java:51)
> > > >>>>>> > > > > > > at org.apache.maven.lifecycle.int (http://org.apache.maven.lifecycle.int)
> > > >>>>>> ernal.LifecycleStarter.execute
> > > >>>>>> > > > > > > (LifecycleStarter.java:128)
> > > >>>>>> > > > > > > at
> > > >>>>>> org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:309)
> > > >>>>>> > > > > > > at
> > > >>>>>> org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:194)
> > > >>>>>> > > > > > > at
> > > >>>>>> org.apache.maven.DefaultMaven.execute(DefaultMaven.java:107)
> > > >>>>>> > > > > > > at org.apache.maven.cli.MavenCli.
> > > >>>>>> execute(MavenCli.java:955)
> > > >>>>>> > > > > > > at
> > > >>>>>> org.apache.maven.cli.MavenCli.doMain(MavenCli.java:290)
> > > >>>>>> > > > > > > at
> > > >>>>>> org.apache.maven.cli.MavenCli.doMain(MavenCli.java:245)
> > > >>>>>> > > > > > > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
> > > >>>>>> Method)
> > > >>>>>> > > > > > > at
> > > >>>>>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAcce
> > > >>>>>> > > > > > > ssorImpl.java:62)
> > > >>>>>> > > > > > > at
> > > >>>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMe
> > > >>>>>> > > > > > > thodAccessorImpl.java:43)
> > > >>>>>> > > > > > > at java.lang.reflect.Method.invoke(Method.java:498) > > > >>>>>> > > > > > > at org.apache.maven.it (http://org.apache.maven.it)
> > > >>>>>> .Embedded3xLauncher.run(Embedded3xLaunche
> > > >>>>>> > > > > > > r.java:247)
> > > >>>>>> > > > > > > at
> > > >>>>>> org.apache.maven.it.Verifier.executeGoals(Verifier.java:1354)
> > > >>>>>> > > > > > > at
> > > >>>>>> org.apache.maven.it.Verifier.executeGoal(Verifier.java:1254)
> > > >>>>>> > > > > > > at
> > > >>>>>> org.apache.maven.it.Verifier.executeGoal(Verifier.java:1248) > > > >>>>>> > > > > > > at org.apache.maven.it (http://org.apache.maven.it)
> > > >>>>>> .MavenITBootstrapTest.testBootstrap(Maven
> > > >>>>>> > > > > > > ITBootstrapTest.java:54)
> > > >>>>>> > > > > > > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
> > > >>>>>> Method)
> > > >>>>>> > > > > > > at
> > > >>>>>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAcce
> > > >>>>>> > > > > > > ssorImpl.java:62)
> > > >>>>>> > > > > > > at
> > > >>>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMe
> > > >>>>>> > > > > > > thodAccessorImpl.java:43)
> > > >>>>>> > > > > > > at java.lang.reflect.Method.invoke(Method.java:498) > > > >>>>>> > > > > > > at junit.framework.TestCase.runTest(TestCase.java:168) > > > >>>>>> > > > > > > at org.apache.maven.it (http://org.apache.maven.it)
> > > >>>>>> .AbstractMavenIntegrationTestCase.runTest
> > > >>>>>> > > > > > > (AbstractMavenIntegrationTestCase.java:222)
> > > >>>>>> > > > > > > at junit.framework.TestCase.runBare(TestCase.java:134)
> > > >>>>>> > > > > > > at junit.framework.TestResult$1.p
> > > >>>>>> rotect(TestResult.java:110)
> > > >>>>>> > > > > > > at
> > > >>>>>> junit.framework.TestResult.runProtected(TestResult.java:128) > > > >>>>>> > > > > > > at junit.framework.TestResult.run(TestResult.java:113) > > > >>>>>> > > > > > > at junit.framework.TestCase.run(TestCase.java:124) > > > >>>>>> > > > > > > at junit.framework.TestSuite.runTest(TestSuite.java:243) > > > >>>>>> > > > > > > at junit.framework.TestSuite.run(TestSuite.java:238) > > > >>>>>> > > > > > > at junit.framework.TestSuite.runTest(TestSuite.java:243) > > > >>>>>> > > > > > > at junit.framework.TestSuite.run(TestSuite.java:238)
> > > >>>>>> > > > > > > at
> > > >>>>>> org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38Cla
> > > >>>>>> > > > > > > ssRunner.java:83)
> > > >>>>>> > > > > > > at
> > > >>>>>> org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUni
> > > >>>>>> > > > > > > t4Provider.java:283)
> > > >>>>>> > > > > > > at
> > > >>>>>> org.apache.maven.surefire.junit4.JUnit4Provider.executeWithR
> > > >>>>>> > > > > > > erun(JUnit4Provider.java:173)
> > > >>>>>> > > > > > > at
> > > >>>>>> org.apache.maven.surefire.junit4.JUnit4Provider.executeTestS
> > > >>>>>> > > > > > > et(JUnit4Provider.java:153)
> > > >>>>>> > > > > > > at
> > > >>>>>> org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit
> > > >>>>>> > > > > > > 4Provider.java:128)
> > > >>>>>> > > > > > > at
> > > >>>>>> org.apache.maven.surefire.booter.ForkedBooter.invokeProvider
> > > >>>>>> > > > > > > InSameClassLoader(ForkedBooter.java:203)
> > > >>>>>> > > > > > > at
> > > >>>>>> org.apache.maven.surefire.booter.ForkedBooter.runSuitesInPro
> > > >>>>>> > > > > > > cess(ForkedBooter.java:155)
> > > >>>>>> > > > > > > at
> > > >>>>>> org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBoo
> > > >>>>>> > > > > > > ter.java:103)
> > > >>>>>> > > > > > > [INFO]
> > > >>>>>> ------------------------------------------------------------
> > > >>>>>> > > > > > > ------------
> > > >>>>>> > > > > > > [INFO] Reactor Summary:
> > > >>>>>> > > > > > > [INFO]
> > > >>>>>> > > > > > > [INFO] Maven Integration Test :: Boostrap
> > > >>>>>> .................
> > > >>>>>> FAILURE [
> > > >>>>>> > > > > > > 2.136 s]
> > > >>>>>> > > > > > > [INFO] Maven Integration Test :: Boostrap :: Group-1
> > > >>>>>> ......
> > > >>>>>> SKIPPED
> > > >>>>>> > > > > > > [INFO] Maven Integration Test :: Boostrap :: Group-2
> > > >>>>>> ......
> > > >>>>>> SKIPPED
> > > >>>>>> > > > > > > [INFO] Maven Integration Test :: Boostrap :: Group-3
> > > >>>>>> ......
> > > >>>>>> SKIPPED
> > > >>>>>> > > > > > > [INFO] Maven Integration Test :: Boostrap :: Group-4
> > > >>>>>> ......
> > > >>>>>> SKIPPED
> > > >>>>>> > > > > > > [INFO] Maven Integration Test :: Boostrap :: Group-5
> > > >>>>>> ......
> > > >>>>>> SKIPPED
> > > >>>>>> > > > > > > [INFO] Maven Integration Test :: Boostrap :: Group-6
> > > >>>>>> ......
> > > >>>>>> SKIPPED
> > > >>>>>> > > > > > > [INFO] Maven Integration Test :: Boostrap :: Group-7
> > > >>>>>> ......
> > > >>>>>> SKIPPED
> > > >>>>>> > > > > > > [INFO]
> > > >>>>>> ------------------------------------------------------------
> > > >>>>>> > > > > > > ------------
> > > >>>>>> > > > > > > [INFO] BUILD FAILURE
> > > >>>>>> > > > > > > [INFO]
> > > >>>>>> ------------------------------------------------------------
> > > >>>>>> > > > > > > ------------
> > > >>>>>> > > > > > > [INFO] Total time: 2.379 s
> > > >>>>>> > > > > > > [INFO] Finished at: 2017-08-29T20:53:51Z
> > > >>>>>> > > > > > > [INFO] Final Memory: 18M/260M
> > > >>>>>> > > > > > > [INFO]
> > > >>>>>> ------------------------------------------------------------
> > > >>>>>> > > > > > > ------------
> > > >>>>>> > > > > > > [ERROR] Failed to execute goal
> > > >>>>>> org.apache.maven.plugins:maven
> > > >>>>>> > > > > > > -dependency-plugin:3.0.0:resolve-plugins
> > > >>>>>> (get-all-plugins-deps) on
> > > >>>>>> > > > > > > project maven-it-boostrap: Execution
> > > >>>>>> get-all-plugins-deps
> > > >>>>>> of
> > > >>>>>> goal
> > > >>>>>> > > > > > >
> > > >>>>>>
> > > org.apache.maven.plugins:maven-dependency-plugin:3.0.0:resolve-plugins > > > >>>>>> > > > > > > failed: Unable to load the mojo 'resolve-plugins' (or
> > > >>>>>> one
> > > >>>>>> of
> > > >>>>>> its
> > > >>>>>> > > > > > > required
> > > >>>>>> > > > > > > components) from the plugin
> > > >>>>>> 'org.apache.maven.plugins:mave
> > > >>>>>> > > > > > > n-dependency-plugin:3.0.0':
> > > >>>>>> > > > > > > com.google.inject.ProvisionException: Unable to
> > > >>>>>> provision,
> > > >>>>>> see the
> > > >>>>>> > > > > > > following errors:
> > > >>>>>> > > > > > > [ERROR]
> > > >>>>>> > > > > > > [ERROR] 1) No implementation for
> > > >>>>>> org.apache.maven.artifact.hand
> > > >>>>>> > > > > > > ler.manager.ArtifactHandlerManager was bound.
> > > >>>>>> > > > > > > [ERROR] while locating org.apache.maven.plugins.depen
> > > >>>>>> > > > > > > dency.resolvers.ResolvePluginsMojo
> > > >>>>>> > > > > > > [ERROR] at ClassRealm[plugin>org.apache.m
> > > >>>>>> > > > > > > aven.plugins:maven-dependency-plugin:3.0.0, parent:
> > > >>>>>> > > > > > > java.net.URLClassLoader@77f03bb1] (via modules:
> > > >>>>>> > > > > > > org.eclipse.sisu.wire.WireModule ->
> > > >>>>>> org.eclipse.sisu.plexus.Plexus
> > > >>>>>> > > > > > > BindingModule)
> > > >>>>>> > > > > > > [ERROR] while locating org.apache.maven.plugin.Mojo
> > > >>>>>> annotated with
> > > >>>>>> > > > > > > @com.google.inject.name.Named(
> > > >>>>>> value=org.apache.maven.plugins
> > > >>>>>> > > > > > > :maven-dependency-plugin:3.0.0:resolve-plugins)
> > > >>>>>> > > > > > > [ERROR]
> > > >>>>>> > > > > > > [ERROR] 1 error
> > > >>>>>> > > > > > > [ERROR] role: org.apache.maven.plugin.Mojo
> > > >>>>>> > > > > > > [ERROR] roleHint: org.apache.maven.plugins:maven
> > > >>>>>> > > > > > > -dependency-plugin:3.0.0:resolve-plugins
> > > >>>>>> > > > > > > [ERROR] -> [Help 1]
> > > >>>>>> > > > > > > org.apache.maven.lifecycle.LifecycleExecutionException:
> > > >>>>>> Failed to
> > > >>>>>> > > > > > > execute goal org.apache.maven.plugins:maven
> > > >>>>>> > > > > > > -dependency-plugin:3.0.0:resolve-plugins
> > > >>>>>> (get-all-plugins-deps) on
> > > >>>>>> > > > > > > project maven-it-boostrap: Execution
> > > >>>>>> get-all-plugins-deps
> > > >>>>>> of
> > > >>>>>> goal
> > > >>>>>> > > > > > >
> > > >>>>>>
> > > org.apache.maven.plugins:maven-dependency-plugin:3.0.0:resolve-plugins > > > >>>>>> > > > > > > failed: Unable to load the mojo 'resolve-plugins' (or
> > > >>>>>> one
> > > >>>>>> of
> > > >>>>>> its
> > > >>>>>> > > > > > > required
> > > >>>>>> > > > > > > components) from the plugin
> > > >>>>>> 'org.apache.maven.plugins:mave
> > > >>>>>> > > > > > > n-dependency-plugin:3.0.0'
> > > >>>>>> > > > > > > at org.apache.maven.lifecycle.int (http://org.apache.maven.lifecycle.int)
> > > >>>>>> ernal.MojoExecutor.execute(Moj
> > > >>>>>> > > > > > > oExecutor.java:213)
> > > >>>>>> > > > > > > at org.apache.maven.lifecycle.int (http://org.apache.maven.lifecycle.int)
> > > >>>>>> ernal.MojoExecutor.execute(Moj
> > > >>>>>> > > > > > > oExecutor.java:154)
> > > >>>>>> > > > > > > at org.apache.maven.lifecycle.int (http://org.apache.maven.lifecycle.int)
> > > >>>>>> ernal.MojoExecutor.execute(Moj
> > > >>>>>> > > > > > > oExecutor.java:146)
> > > >>>>>> > > > > > > at org.apache.maven.lifecycle.int (http://org.apache.maven.lifecycle.int)
> > > >>>>>> ernal.LifecycleModuleBuilder.b
> > > >>>>>> > > > > > > uildProject(LifecycleModuleBuilder.java:117)
> > > >>>>>> > > > > > > at org.apache.maven.lifecycle.int (http://org.apache.maven.lifecycle.int)
> > > >>>>>> ernal.LifecycleModuleBuilder.b
> > > >>>>>> > > > > > > uildProject(LifecycleModuleBuilder.java:81)
> > > >>>>>> > > > > > > at org.apache.maven.lifecycle.int (http://org.apache.maven.lifecycle.int)
> > > >>>>>> ernal.builder.singlethreaded.S
> > > >>>>>> > > > > > >
> > > >>>>>> ingleThreadedBuilder.build(SingleThreadedBuilder.java:51)
> > > >>>>>> > > > > > > at org.apache.maven.lifecycle.int (http://org.apache.maven.lifecycle.int)
> > > >>>>>> ernal.LifecycleStarter.execute
> > > >>>>>> > > > > > >
> > > >>>>>> > > > > > > (LifecycleStarter.java:128)
> > > >>>>>> > > > > > > at
> > > >>>>>> org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:309)
> > > >>>>>> > > > > > > at
> > > >>>>>> org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:194)
> > > >>>>>> > > > > > > at
> > > >>>>>> org.apache.maven.DefaultMaven.execute(DefaultMaven.java:107)
> > > >>>>>> > > > > > > at org.apache.maven.cli.MavenCli.
> > > >>>>>> execute(MavenCli.java:955)
> > > >>>>>> > > > > > > at
> > > >>>>>> org.apache.maven.cli.MavenCli.doMain(MavenCli.java:290)
> > > >>>>>> > > > > > > at
> > > >>>>>> org.apache.maven.cli.MavenCli.doMain(MavenCli.java:245)
> > > >>>>>> > > > > > > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
> > > >>>>>> Method)
> > > >>>>>> > > > > > > at
> > > >>>>>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAcce
> > > >>>>>> > > > > > > ssorImpl.java:62)
> > > >>>>>> > > > > > > at
> > > >>>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMe
> > > >>>>>> > > > > > > thodAccessorImpl.java:43)
> > > >>>>>> > > > > > > at java.lang.reflect.Method.invoke(Method.java:498) > > > >>>>>> > > > > > > at org.apache.maven.it (http://org.apache.maven.it)
> > > >>>>>> .Embedded3xLauncher.run(Embedded3xLaunche
> > > >>>>>> > > > > > > r.java:247)
> > > >>>>>> > > > > > > at
> > > >>>>>> org.apache.maven.it.Verifier.executeGoals(Verifier.java:1354)
> > > >>>>>> > > > > > > at
> > > >>>>>> org.apache.maven.it.Verifier.executeGoal(Verifier.java:1254)
> > > >>>>>> > > > > > > at
> > > >>>>>> org.apache.maven.it.Verifier.executeGoal(Verifier.java:1248) > > > >>>>>> > > > > > > at org.apache.maven.it (http://org.apache.maven.it)
> > > >>>>>> .MavenITBootstrapTest.testBootstrap(Maven
> > > >>>>>> > > > > > > ITBootstrapTest.java:54)
> > > >>>>>> > > > > > > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
> > > >>>>>> Method)
> > > >>>>>> > > > > > > at
> > > >>>>>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAcce
> > > >>>>>> > > > > > > ssorImpl.java:62)
> > > >>>>>> > > > > > > at
> > > >>>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMe
> > > >>>>>> > > > > > > thodAccessorImpl.java:43)
> > > >>>>>> > > > > > > at java.lang.reflect.Method.invoke(Method.java:498) > > > >>>>>> > > > > > > at junit.framework.TestCase.runTest(TestCase.java:168) > > > >>>>>> > > > > > > at org.apache.maven.it (http://org.apache.maven.it)
> > > >>>>>> .AbstractMavenIntegrationTestCase.runTest
> > > >>>>>> > > > > > > (AbstractMavenIntegrationTestCase.java:222)
> > > >>>>>> > > > > > > at junit.framework.TestCase.runBare(TestCase.java:134)
> > > >>>>>> > > > > > > at junit.framework.TestResult$1.p
> > > >>>>>> rotect(TestResult.java:110)
> > > >>>>>> > > > > > > at
> > > >>>>>> junit.framework.TestResult.runProtected(TestResult.java:128) > > > >>>>>> > > > > > > at junit.framework.TestResult.run(TestResult.java:113) > > > >>>>>> > > > > > > at junit.framework.TestCase.run(TestCase.java:124) > > > >>>>>> > > > > > > at junit.framework.TestSuite.runTest(TestSuite.java:243) > > > >>>>>> > > > > > > at junit.framework.TestSuite.run(TestSuite.java:238) > > > >>>>>> > > > > > > at junit.framework.TestSuite.runTest(TestSuite.java:243) > > > >>>>>> > > > > > > at junit.framework.TestSuite.run(TestSuite.java:238)
> > > >>>>>> > > > > > > at
> > > >>>>>> org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38Cla
> > > >>>>>> > > > > > > ssRunner.java:83)
> > > >>>>>> > > > > > > at
> > > >>>>>> org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUni
> > > >>>>>> > > > > > > t4Provider.java:283)
> > > >>>>>> > > > > > > at
> > > >>>>>> org.apache.maven.surefire.junit4.JUnit4Provider.executeWithR
> > > >>>>>> > > > > > > erun(JUnit4Provider.java:173)
> > > >>>>>> > > > > > > at
> > > >>>>>> org.apache.maven.surefire.junit4.JUnit4Provider.executeTestS
> > > >>>>>> > > > > > > et(JUnit4Provider.java:153)
> > > >>>>>> > > > > > > at
> > > >>>>>> org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit
> > > >>>>>> > > > > > > 4Provider.java:128)
> > > >>>>>> > > > > > > at
> > > >>>>>> org.apache.maven.surefire.booter.ForkedBooter.invokeProvider
> > > >>>>>> > > > > > > InSameClassLoader(ForkedBooter.java:203)
> > > >>>>>> > > > > > > at
> > > >>>>>> org.apache.maven.surefire.booter.ForkedBooter.runSuitesInPro
> > > >>>>>> > > > > > > cess(ForkedBooter.java:155)
> > > >>>>>> > > > > > > at
> > > >>>>>> org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBoo
> > > >>>>>> > > > > > > ter.java:103)
> > > >>>>>> > > > > > > Caused by: org.apache.maven.plugin.Plugin
> > > >>>>>> ExecutionException:
> > > >>>>>> Execution
> > > >>>>>> > > > > > > get-all-plugins-deps of goal
> > > >>>>>> org.apache.maven.plugins:maven
> > > >>>>>> > > > > > > -dependency-plugin:3.0.0:resolve-plugins failed: Unable
> > > >>>>>> to
> > > >>>>>> load the
> > > >>>>>> > > > > > > mojo 'resolve-plugins' (or one of its required
> > > >>>>>> components)
> > > >>>>>> from the
> > > >>>>>> > > > > > > plugin
> > > >>>>>> > > > > > > 'org.apache.maven.plugins:maven-dependency-plugin:3.0.0'
> > > >>>>>> > > > > > > at
> > > >>>>>> org.apache.maven.plugin.DefaultBuildPluginManager.executeMoj
> > > >>>>>> > > > > > > o(DefaultBuildPluginManager.java:156)
> > > >>>>>> > > > > > > at org.apache.maven.lifecycle.int (http://org.apache.maven.lifecycle.int)
> > > >>>>>> ernal.MojoExecutor.execute(Moj
> > > >>>>>> > > > > > > oExecutor.java:208)
> > > >>>>>> > > > > > > ... 44 more
> > > >>>>>> > > > > > > Caused by: org.apache.maven.plugin.Plugin
> > > >>>>>> ContainerException:
> > > >>>>>> Unable to
> > > >>>>>> > > > > > > load the mojo 'resolve-plugins' (or one of its required
> > > >>>>>> components)
> > > >>>>>> > > > > > > from
> > > >>>>>> > > > > > > the plugin
> > > >>>>>> 'org.apache.maven.plugins:maven-dependency-plugin:3.0.0'
> > > >>>>>> > > > > > > at
> > > >>>>>> org.apache.maven.plugin.internal.DefaultMavenPluginManager.g > > > >>>>>> > > > > > > etConfiguredMojo(DefaultMavenPluginManager.java:553)
> > > >>>>>> > > > > > > at
> > > >>>>>> org.apache.maven.plugin.DefaultBuildPluginManager.executeMoj
> > > >>>>>> > > > > > > o(DefaultBuildPluginManager.java:124)
> > > >>>>>> > > > > > > ... 45 more
> > > >>>>>> > > > > > > Caused by: org.codehaus.plexus.component.
> > > >>>>>> > > > > > > repository.exception.ComponentLookupException:
> > > >>>>>> > > > > > > com.google.inject.ProvisionException: Unable to
> > > >>>>>> provision,
> > > >>>>>> see the
> > > >>>>>> > > > > > > following errors:
> > > >>>>>> > > > > > > 1) No implementation for org.apache.maven.artifact.hand
> > > >>>>>> > > > > > > ler.manager.ArtifactHandlerManager was bound.
> > > >>>>>> > > > > > > while locating org.apache.maven.plugins.depen
> > > >>>>>> > > > > > > dency.resolvers.ResolvePluginsMojo
> > > >>>>>> > > > > > > at
> > > >>>>>> ClassRealm[plugin>org.apache.maven.plugins:maven-dependency-
> > > >>>>>> > > > > > > plugin:3.0.0,
> > > >>>>>> > > > > > > parent: java.net.URLClassLoader@77f03bb1] (via modules:
> > > >>>>>> > > > > > > org.eclipse.sisu.wire.WireModule ->
> > > >>>>>> org.eclipse.sisu.plexus.Plexus
> > > >>>>>> > > > > > > BindingModule)
> > > >>>>>> > > > > > > while locating org.apache.maven.plugin.Mojo annotated
> > > >>>>>> with
> > > >>>>>> > > > > > > @com.google.inject.name.Named(
> > > >>>>>> value=org.apache.maven.plugins
> > > >>>>>> > > > > > > :maven-dependency-plugin:3.0.0:resolve-plugins)
> > > >>>>>> > > > > > > 1 error
> > > >>>>>> > > > > > > role: org.apache.maven.plugin.Mojo
> > > >>>>>> > > > > > > roleHint: org.apache.maven.plugins:maven
> > > >>>>>> > > > > > > -dependency-plugin:3.0.0:resol
> > > >>>>>> > > > > > > ve-plugins
> > > >>>>>> > > > > > > at
> > > >>>>>> org.codehaus.plexus.DefaultPlexusContainer.lookup(DefaultPle
> > > >>>>>> > > > > > > xusContainer.java:267)
> > > >>>>>> > > > > > > at
> > > >>>>>> org.codehaus.plexus.DefaultPlexusContainer.lookup(DefaultPle
> > > >>>>>> > > > > > > xusContainer.java:255)
> > > >>>>>> > > > > > > at
> > > >>>>>> org.apache.maven.plugin.internal.DefaultMavenPluginManager.g > > > >>>>>> > > > > > > etConfiguredMojo(DefaultMavenPluginManager.java:519)
> > > >>>>>> > > > > > > ... 46 more
> > > >>>>>> > > > > > > Caused by: com.google.inject.ProvisionException: Unable
> > > >>>>>> to
> > > >>>>>> provision,
> > > >>>>>> > > > > > > see the following errors:
> > > >>>>>> > > > > > > 1) No implementation for org.apache.maven.artifact.hand
> > > >>>>>> > > > > > > ler.manager.ArtifactHandlerManager was bound.
> > > >>>>>> > > > > > > while locating org.apache.maven.plugins.depen
> > > >>>>>> > > > > > > dency.resolvers.ResolvePluginsMojo
> > > >>>>>> > > > > > > at
> > > >>>>>> ClassRealm[plugin>org.apache.maven.plugins:maven-dependency-
> > > >>>>>> > > > > > > plugin:3.0.0,
> > > >>>>>> > > > > > > parent: java.net.URLClassLoader@77f03bb1] (via modules:
> > > >>>>>> > > > > > > org.eclipse.sisu.wire.WireModule ->
> > > >>>>>> org.eclipse.sisu.plexus.Plexus
> > > >>>>>> > > > > > > BindingModule)
> > > >>>>>> > > > > > > while locating org.apache.maven.plugin.Mojo annotated
> > > >>>>>> with
> > > >>>>>> > > > > > > @com.google.inject.name.Named(
> > > >>>>>> value=org.apache.maven.plugins
> > > >>>>>> > > > > > > :maven-dependency-plugin:3.0.0:resolve-plugins)
> > > >>>>>> > > > > > > 1 error
> > > >>>>>> > > > > > > at
> > > >>>>>> com.google.inject.internal.InjectorImpl$2.get(InjectorImpl.j
> > > >>>>>> > > > > > > ava:1025)
> > > >>>>>> > > > > > > at org.eclipse.sisu.inject.Guice4$1.get(Guice4.java:162)
> > > >>>>>> > > > > > > at
> > > >>>>>> org.eclipse.sisu.inject.LazyBeanEntry.getValue(LazyBeanEntry
> > > >>>>>> > > > > > > .java:81)
> > > >>>>>> > > > > > > at
> > > >>>>>> org.eclipse.sisu.plexus.LazyPlexusBean.getValue(LazyPlexusBe
> > > >>>>>> > > > > > > an.java:51)
> > > >>>>>> > > > > > > at
> > > >>>>>> org.codehaus.plexus.DefaultPlexusContainer.lookup(DefaultPle
> > > >>>>>> > > > > > > xusContainer.java:263)
> > > >>>>>> > > > > > > ... 48 more
> > > >>>>>> > > > > > > [ERROR]
> > > >>>>>> > > > > > > [ERROR] Re-run Maven using the -X switch to enable full
> > > >>>>>> debug logging.
> > > >>>>>> > > > > > > [ERROR]
> > > >>>>>> > > > > > > [ERROR] For more information about the errors and
> > > >>>>>> possible
> > > >>>>>> solutions,
> > > >>>>>> > > > > > > please read the following articles:
> > > >>>>>> > > > > > > [ERROR] [Help 1] http://cwiki.apache.org/conflu
> > > >>>>>> > > > > > > ence/display/MAVEN/PluginContainerException
> > > >>>>>> > > > > > >
> > > >>>>>> > > > > >
> > > >>>>>> > > > > >
> > > >>>>>> > > > >
> > > >>>>>> > > > >
> > > >>>>>> > > >
> > > >>>>>> > > >
> > > >>>>>> > >
> > > >>>>>> > > ------------------------------------------------------------
> > > >>>>>> ---------
> > > >>>>>> > > To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org (mailto:dev-unsubscr...@maven.apache.org)
> > > >>>>>> (mailto:
> > > >>>>>> dev-unsubscr...@maven.apache.org (mailto:dev-unsubscr...@maven.apache.org)) > > > >>>>>> > > For additional commands, e-mail: dev-h...@maven.apache.org (mailto:dev-h...@maven.apache.org)
> > > >>>>>> (mailto:
> > > >>>>>> dev-h...@maven.apache.org (mailto:dev-h...@maven.apache.org))
> > > >>>>>> > >
> > > >>>>>> >
> > > >>>>>> >
> > > >>>>>> >
> > > >>>>>>
> > > >>>>>>
> > > >>>>>>
> > > >>>>>>
> > > >>>>> --
> > > >>>>
> > > >>> Sent from my phone
> > > >>>
> > > >>
> > > >> --------------------------------------------------------------------- > > > >> To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org (mailto:dev-unsubscr...@maven.apache.org) > > > >> For additional commands, e-mail: dev-h...@maven.apache.org (mailto:dev-h...@maven.apache.org)
> > > >>
> > >
> > > --------------------------------------------------------------------- > > > To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org (mailto:dev-unsubscr...@maven.apache.org) > > > For additional commands, e-mail: dev-h...@maven.apache.org (mailto:dev-h...@maven.apache.org)
> > >
> > > --
> > Sent from my phone
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org (mailto:dev-unsubscr...@maven.apache.org) > For additional commands, e-mail: dev-h...@maven.apache.org (mailto:dev-h...@maven.apache.org)
>


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org
For additional commands, e-mail: dev-h...@maven.apache.org

Reply via email to