[
https://issues.apache.org/jira/browse/MNG-7341?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Guillaume Nodet updated MNG-7341:
---------------------------------
Description:
The `commons-lang3` jar is available in the extension classloader when loaded
from {{.mvn/extensions.xml}} but not when loaded from the {{{}pom.xml{}}}.
When loaded from {{pom.xml}}
{code:java}
[DEBUG] Created new class realm
extension>org.apache.maven:maven-caching:4.0.0-alpha-1-SNAPSHOT
[DEBUG] Importing foreign packages into class realm
extension>org.apache.maven:maven-caching:4.0.0-alpha-1-SNAPSHOT
[DEBUG] Imported: < maven.api
[DEBUG] Populating class realm
extension>org.apache.maven:maven-caching:4.0.0-alpha-1-SNAPSHOT
[DEBUG] Included: org.apache.maven:maven-caching:jar:4.0.0-alpha-1-SNAPSHOT
[DEBUG] Included: org.apache.httpcomponents:httpclient:jar:4.5.6
[DEBUG] Included: org.apache.httpcomponents:httpcore:jar:4.4.10
[DEBUG] Included: commons-logging:commons-logging:jar:1.2
[DEBUG] Included: commons-codec:commons-codec:jar:1.10
[DEBUG] Included: net.openhft:zero-allocation-hashing:jar:0.9
[DEBUG] Included: com.github.albfernandez:juniversalchardet:jar:2.4.0
[DEBUG] Included: com.google.code.findbugs:jsr305:jar:3.0.2
[TRACE] Potential problem: org.apache.maven.caching.LocalCacheRepositoryImpl
java.lang.NoClassDefFoundError: org/apache/commons/lang3/tuple/Pair
at java.lang.Class.getDeclaredMethods0 (Native Method)
at java.lang.Class.privateGetDeclaredMethods (Class.java:3166)
at java.lang.Class.getDeclaredMethods (Class.java:2309)
at com.google.inject.internal.DeclaredMembers.getDeclaredMethods
(DeclaredMembers.java:40)
at com.google.inject.spi.InjectionPoint.getDeclaredMethods
(InjectionPoint.java:757)
at com.google.inject.spi.InjectionPoint.getInjectionPoints
(InjectionPoint.java:676)
{code}
vs when loaded from {{.mvn/extensions.xml}}
{code:java}
[DEBUG] Populating class realm
coreExtension>org.apache.maven:maven-caching:4.0.0-alpha-1-SNAPSHOT
[DEBUG] Included
/Users/gnodet/.m2/repository/org/apache/maven/maven-caching/4.0.0-alpha-1-SNAPSHOT/maven-caching-4.0.0-alpha-1-SNAPSHOT.jar
[DEBUG] Included
/Users/gnodet/.m2/repository/org/apache/httpcomponents/httpclient/4.5.6/httpclient-4.5.6.jar
[DEBUG] Included
/Users/gnodet/.m2/repository/org/apache/httpcomponents/httpcore/4.4.10/httpcore-4.4.10.jar
[DEBUG] Included
/Users/gnodet/.m2/repository/commons-logging/commons-logging/1.2/commons-logging-1.2.jar
[DEBUG] Included
/Users/gnodet/.m2/repository/commons-codec/commons-codec/1.10/commons-codec-1.10.jar
[DEBUG] Included
/Users/gnodet/.m2/repository/net/openhft/zero-allocation-hashing/0.9/zero-allocation-hashing-0.9.jar
[DEBUG] Included
/Users/gnodet/.m2/repository/com/github/albfernandez/juniversalchardet/2.4.0/juniversalchardet-2.4.0.jar
[DEBUG] Included
/Users/gnodet/.m2/repository/com/google/code/findbugs/jsr305/3.0.2/jsr305-3.0.2.jar
{code}
was:
The `commons-lang3` jar is available in the extension classloader when loaded
from {{.mvn/extensions.xml}} but not when loaded from the {{pom.xml}}.
{code}
[DEBUG] Created new class realm
extension>org.apache.maven:maven-caching:4.0.0-alpha-1-SNAPSHOT
[DEBUG] Importing foreign packages into class realm
extension>org.apache.maven:maven-caching:4.0.0-alpha-1-SNAPSHOT
[DEBUG] Imported: < maven.api
[DEBUG] Populating class realm
extension>org.apache.maven:maven-caching:4.0.0-alpha-1-SNAPSHOT
[DEBUG] Included: org.apache.maven:maven-caching:jar:4.0.0-alpha-1-SNAPSHOT
[DEBUG] Included: org.apache.httpcomponents:httpclient:jar:4.5.6
[DEBUG] Included: org.apache.httpcomponents:httpcore:jar:4.4.10
[DEBUG] Included: commons-logging:commons-logging:jar:1.2
[DEBUG] Included: commons-codec:commons-codec:jar:1.10
[DEBUG] Included: net.openhft:zero-allocation-hashing:jar:0.9
[DEBUG] Included: com.github.albfernandez:juniversalchardet:jar:2.4.0
[DEBUG] Included: com.google.code.findbugs:jsr305:jar:3.0.2
[TRACE] Potential problem: org.apache.maven.caching.LocalCacheRepositoryImpl
java.lang.NoClassDefFoundError: org/apache/commons/lang3/tuple/Pair
at java.lang.Class.getDeclaredMethods0 (Native Method)
at java.lang.Class.privateGetDeclaredMethods (Class.java:3166)
at java.lang.Class.getDeclaredMethods (Class.java:2309)
at com.google.inject.internal.DeclaredMembers.getDeclaredMethods
(DeclaredMembers.java:40)
at com.google.inject.spi.InjectionPoint.getDeclaredMethods
(InjectionPoint.java:757)
at com.google.inject.spi.InjectionPoint.getInjectionPoints
(InjectionPoint.java:676)
{code}
vs
{code}
[DEBUG] Populating class realm
coreExtension>org.apache.maven:maven-caching:4.0.0-alpha-1-SNAPSHOT
[DEBUG] Included
/Users/gnodet/.m2/repository/org/apache/maven/maven-caching/4.0.0-alpha-1-SNAPSHOT/maven-caching-4.0.0-alpha-1-SNAPSHOT.jar
[DEBUG] Included
/Users/gnodet/.m2/repository/org/apache/httpcomponents/httpclient/4.5.6/httpclient-4.5.6.jar
[DEBUG] Included
/Users/gnodet/.m2/repository/org/apache/httpcomponents/httpcore/4.4.10/httpcore-4.4.10.jar
[DEBUG] Included
/Users/gnodet/.m2/repository/commons-logging/commons-logging/1.2/commons-logging-1.2.jar
[DEBUG] Included
/Users/gnodet/.m2/repository/commons-codec/commons-codec/1.10/commons-codec-1.10.jar
[DEBUG] Included
/Users/gnodet/.m2/repository/net/openhft/zero-allocation-hashing/0.9/zero-allocation-hashing-0.9.jar
[DEBUG] Included
/Users/gnodet/.m2/repository/com/github/albfernandez/juniversalchardet/2.4.0/juniversalchardet-2.4.0.jar
[DEBUG] Included
/Users/gnodet/.m2/repository/com/google/code/findbugs/jsr305/3.0.2/jsr305-3.0.2.jar
{code}
> Extension classloader is different when loaded from .mvn/extensions and from
> the pom
> ------------------------------------------------------------------------------------
>
> Key: MNG-7341
> URL: https://issues.apache.org/jira/browse/MNG-7341
> Project: Maven
> Issue Type: Bug
> Reporter: Guillaume Nodet
> Priority: Major
>
> The `commons-lang3` jar is available in the extension classloader when loaded
> from {{.mvn/extensions.xml}} but not when loaded from the {{{}pom.xml{}}}.
>
> When loaded from {{pom.xml}}
> {code:java}
> [DEBUG] Created new class realm
> extension>org.apache.maven:maven-caching:4.0.0-alpha-1-SNAPSHOT
> [DEBUG] Importing foreign packages into class realm
> extension>org.apache.maven:maven-caching:4.0.0-alpha-1-SNAPSHOT
> [DEBUG] Imported: < maven.api
> [DEBUG] Populating class realm
> extension>org.apache.maven:maven-caching:4.0.0-alpha-1-SNAPSHOT
> [DEBUG] Included: org.apache.maven:maven-caching:jar:4.0.0-alpha-1-SNAPSHOT
> [DEBUG] Included: org.apache.httpcomponents:httpclient:jar:4.5.6
> [DEBUG] Included: org.apache.httpcomponents:httpcore:jar:4.4.10
> [DEBUG] Included: commons-logging:commons-logging:jar:1.2
> [DEBUG] Included: commons-codec:commons-codec:jar:1.10
> [DEBUG] Included: net.openhft:zero-allocation-hashing:jar:0.9
> [DEBUG] Included: com.github.albfernandez:juniversalchardet:jar:2.4.0
> [DEBUG] Included: com.google.code.findbugs:jsr305:jar:3.0.2
> [TRACE] Potential problem: org.apache.maven.caching.LocalCacheRepositoryImpl
> java.lang.NoClassDefFoundError: org/apache/commons/lang3/tuple/Pair
> at java.lang.Class.getDeclaredMethods0 (Native Method)
> at java.lang.Class.privateGetDeclaredMethods (Class.java:3166)
> at java.lang.Class.getDeclaredMethods (Class.java:2309)
> at com.google.inject.internal.DeclaredMembers.getDeclaredMethods
> (DeclaredMembers.java:40)
> at com.google.inject.spi.InjectionPoint.getDeclaredMethods
> (InjectionPoint.java:757)
> at com.google.inject.spi.InjectionPoint.getInjectionPoints
> (InjectionPoint.java:676)
> {code}
> vs when loaded from {{.mvn/extensions.xml}}
> {code:java}
> [DEBUG] Populating class realm
> coreExtension>org.apache.maven:maven-caching:4.0.0-alpha-1-SNAPSHOT
> [DEBUG] Included
> /Users/gnodet/.m2/repository/org/apache/maven/maven-caching/4.0.0-alpha-1-SNAPSHOT/maven-caching-4.0.0-alpha-1-SNAPSHOT.jar
> [DEBUG] Included
> /Users/gnodet/.m2/repository/org/apache/httpcomponents/httpclient/4.5.6/httpclient-4.5.6.jar
> [DEBUG] Included
> /Users/gnodet/.m2/repository/org/apache/httpcomponents/httpcore/4.4.10/httpcore-4.4.10.jar
> [DEBUG] Included
> /Users/gnodet/.m2/repository/commons-logging/commons-logging/1.2/commons-logging-1.2.jar
> [DEBUG] Included
> /Users/gnodet/.m2/repository/commons-codec/commons-codec/1.10/commons-codec-1.10.jar
> [DEBUG] Included
> /Users/gnodet/.m2/repository/net/openhft/zero-allocation-hashing/0.9/zero-allocation-hashing-0.9.jar
> [DEBUG] Included
> /Users/gnodet/.m2/repository/com/github/albfernandez/juniversalchardet/2.4.0/juniversalchardet-2.4.0.jar
> [DEBUG] Included
> /Users/gnodet/.m2/repository/com/google/code/findbugs/jsr305/3.0.2/jsr305-3.0.2.jar
> {code}
--
This message was sent by Atlassian Jira
(v8.20.1#820001)