[ 
https://issues.apache.org/jira/browse/DELTASPIKE-1414?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Bing-ok updated DELTASPIKE-1414:
--------------------------------
    Description: 
h1. Issue description

Hi, there are multiple versions of _*org.jboss.shrinkwrap:shrinkwrap-api*_ in 
_*deltaspike\deltaspike\test-utils*_. As shown in the following dependency 
tree, according to Maven's “nearest wins” strategy, only 
_*org.jboss.shrinkwrap:shrinkwrap-api:1.0.1*_ can be loaded, and 
_*org.jboss.shrinkwrap:shrinkwrap-api:1.2.2*_ will be shadowed.

However, several methods defined in shadowed version 
_*org.jboss.shrinkwrap:shrinkwrap-api:1.2.2*_ is referenced by client project 
via 
*_org.jboss.arquillian.container:arquillian-container-test-spi:1.1.8.Final_*, 
but missing in the actually loaded version 
_*org.jboss.shrinkwrap:shrinkwrap-api:1.0.1*_.

For instance, the following missing methods(defined in 
_*org.jboss.shrinkwrap:shrinkwrap-api:1.2.2*_) is actually referenced by 
_*deltaspike\deltaspike\test-utils*_, which will introduce a runtime 
error(i.e., "NoSuchMethodErrors") into _*deltaspike\deltaspike\test-utils*_.

1. _*org.jboss.shrinkwrap.api.ArchiveEvent: void init 
(org.jboss.shrinkwrap.api.ArchivePath,org.jboss.shrinkwrap.api.asset.Asset)*_ 
is invoked by _*deltaspike\deltaspike\test-utils*_ via the following path:
{noformat}
paths--
<org.apache.deltaspike.test.arquillian.DeltaSpikeServerUtilAppender: 
org.jboss.shrinkwrap.api.Archive buildArchive()> 
deltaspike\deltaspike\test-utils\target\classes
<org.jboss.shrinkwrap.impl.base.container.ContainerBase: 
org.jboss.shrinkwrap.api.Archive 
addAsManifestResource(org.jboss.shrinkwrap.api.asset.Asset,java.lang.String)> 
Repositories\org\jboss\shrinkwrap\shrinkwrap-impl-base\1.2.2\shrinkwrap-impl-base-1.2.2.jar
<org.jboss.shrinkwrap.impl.base.container.ContainerBase: 
org.jboss.shrinkwrap.api.Archive 
addAsManifestResource(org.jboss.shrinkwrap.api.asset.Asset,org.jboss.shrinkwrap.api.ArchivePath)>
 
Repositories\org\jboss\shrinkwrap\shrinkwrap-impl-base\1.2.2\shrinkwrap-impl-base-1.2.2.jar
<org.jboss.shrinkwrap.impl.base.container.ContainerBase: 
org.jboss.shrinkwrap.api.Archive 
add(org.jboss.shrinkwrap.api.asset.Asset,org.jboss.shrinkwrap.api.ArchivePath)> 
Repositories\org\jboss\shrinkwrap\shrinkwrap-impl-base\1.2.2\shrinkwrap-impl-base-1.2.2.jar
<org.jboss.shrinkwrap.impl.base.MemoryMapArchiveBase: 
org.jboss.shrinkwrap.api.Archive 
add(org.jboss.shrinkwrap.api.asset.Asset,org.jboss.shrinkwrap.api.ArchivePath)> 
Repositories\org\jboss\shrinkwrap\shrinkwrap-impl-base\1.2.2\shrinkwrap-impl-base-1.2.2.jar
<org.jboss.shrinkwrap.impl.base.MemoryMapArchiveBase: 
org.jboss.shrinkwrap.api.Archive 
addAsset(org.jboss.shrinkwrap.api.ArchivePath,org.jboss.shrinkwrap.api.asset.Asset)>
 
Repositories\org\jboss\shrinkwrap\shrinkwrap-impl-base\1.2.2\shrinkwrap-impl-base-1.2.2.jar
<org.jboss.shrinkwrap.impl.base.MemoryMapArchiveBase: 
org.jboss.shrinkwrap.api.asset.Asset 
invokeHandlers(org.jboss.shrinkwrap.api.ArchivePath,org.jboss.shrinkwrap.api.asset.Asset)>
 
Repositories\org\jboss\shrinkwrap\shrinkwrap-impl-base\1.2.2\shrinkwrap-impl-base-1.2.2.jar
<org.jboss.shrinkwrap.api.ArchiveEvent: void 
<init>(org.jboss.shrinkwrap.api.ArchivePath,org.jboss.shrinkwrap.api.asset.Asset)>{noformat}
2. _*org.jboss.shrinkwrap.api.IllegalOverwriteException: void init 
(java.lang.String)*_ is invoked by _*deltaspike\deltaspike\test-utils*_ via the 
following path:
{noformat}
paths--
<org.apache.deltaspike.test.arquillian.DeltaSpikeServerUtilAppender: 
org.jboss.shrinkwrap.api.Archive buildArchive()> 
deltaspike\deltaspike\test-utils\target\classes
<org.jboss.shrinkwrap.impl.base.container.ContainerBase: 
org.jboss.shrinkwrap.api.Archive 
addAsManifestResource(org.jboss.shrinkwrap.api.asset.Asset,java.lang.String)> 
Repositories\org\jboss\shrinkwrap\shrinkwrap-impl-base\1.2.2\shrinkwrap-impl-base-1.2.2.jar
<org.jboss.shrinkwrap.impl.base.container.ContainerBase: 
org.jboss.shrinkwrap.api.Archive 
addAsManifestResource(org.jboss.shrinkwrap.api.asset.Asset,org.jboss.shrinkwrap.api.ArchivePath)>
 
Repositories\org\jboss\shrinkwrap\shrinkwrap-impl-base\1.2.2\shrinkwrap-impl-base-1.2.2.jar
<org.jboss.shrinkwrap.impl.base.container.ContainerBase: 
org.jboss.shrinkwrap.api.Archive 
add(org.jboss.shrinkwrap.api.asset.Asset,org.jboss.shrinkwrap.api.ArchivePath)> 
Repositories\org\jboss\shrinkwrap\shrinkwrap-impl-base\1.2.2\shrinkwrap-impl-base-1.2.2.jar
<org.jboss.shrinkwrap.impl.base.MemoryMapArchiveBase: 
org.jboss.shrinkwrap.api.Archive 
add(org.jboss.shrinkwrap.api.asset.Asset,org.jboss.shrinkwrap.api.ArchivePath)> 
Repositories\org\jboss\shrinkwrap\shrinkwrap-impl-base\1.2.2\shrinkwrap-impl-base-1.2.2.jar
<org.jboss.shrinkwrap.impl.base.MemoryMapArchiveBase: 
org.jboss.shrinkwrap.api.Archive 
addAsset(org.jboss.shrinkwrap.api.ArchivePath,org.jboss.shrinkwrap.api.asset.Asset)>
 
Repositories\org\jboss\shrinkwrap\shrinkwrap-impl-base\1.2.2\shrinkwrap-impl-base-1.2.2.jar
<org.jboss.shrinkwrap.api.IllegalOverwriteException: void 
<init>(java.lang.String)>{noformat}
3. _*org.jboss.shrinkwrap.api.ArchiveEvent: 
org.jboss.shrinkwrap.api.asset.Asset getHandledAsset()*_ is invoked by 
_*deltaspike\deltaspike\test-utils*_ via the following path:
{noformat}
paths--
<org.apache.deltaspike.test.arquillian.DeltaSpikeServerUtilAppender: 
org.jboss.shrinkwrap.api.Archive buildArchive()> 
deltaspike\deltaspike\test-utils\target\classes
<org.jboss.shrinkwrap.impl.base.container.ContainerBase: 
org.jboss.shrinkwrap.api.Archive 
addAsManifestResource(org.jboss.shrinkwrap.api.asset.Asset,java.lang.String)> 
Repositories\org\jboss\shrinkwrap\shrinkwrap-impl-base\1.2.2\shrinkwrap-impl-base-1.2.2.jar
<org.jboss.shrinkwrap.impl.base.container.ContainerBase: 
org.jboss.shrinkwrap.api.Archive 
addAsManifestResource(org.jboss.shrinkwrap.api.asset.Asset,org.jboss.shrinkwrap.api.ArchivePath)>
 
Repositories\org\jboss\shrinkwrap\shrinkwrap-impl-base\1.2.2\shrinkwrap-impl-base-1.2.2.jar
<org.jboss.shrinkwrap.impl.base.container.ContainerBase: 
org.jboss.shrinkwrap.api.Archive 
add(org.jboss.shrinkwrap.api.asset.Asset,org.jboss.shrinkwrap.api.ArchivePath)> 
Repositories\org\jboss\shrinkwrap\shrinkwrap-impl-base\1.2.2\shrinkwrap-impl-base-1.2.2.jar
<org.jboss.shrinkwrap.impl.base.MemoryMapArchiveBase: 
org.jboss.shrinkwrap.api.Archive 
add(org.jboss.shrinkwrap.api.asset.Asset,org.jboss.shrinkwrap.api.ArchivePath)> 
Repositories\org\jboss\shrinkwrap\shrinkwrap-impl-base\1.2.2\shrinkwrap-impl-base-1.2.2.jar
<org.jboss.shrinkwrap.impl.base.MemoryMapArchiveBase: 
org.jboss.shrinkwrap.api.Archive 
addAsset(org.jboss.shrinkwrap.api.ArchivePath,org.jboss.shrinkwrap.api.asset.Asset)>
 
Repositories\org\jboss\shrinkwrap\shrinkwrap-impl-base\1.2.2\shrinkwrap-impl-base-1.2.2.jar
<org.jboss.shrinkwrap.impl.base.MemoryMapArchiveBase: 
org.jboss.shrinkwrap.api.asset.Asset 
invokeHandlers(org.jboss.shrinkwrap.api.ArchivePath,org.jboss.shrinkwrap.api.asset.Asset)>
 
Repositories\org\jboss\shrinkwrap\shrinkwrap-impl-base\1.2.2\shrinkwrap-impl-base-1.2.2.jar
<org.jboss.shrinkwrap.api.ArchiveEvent: org.jboss.shrinkwrap.api.asset.Asset 
getHandledAsset()>{noformat}
h1. Suggested fixing solutions

Upgrade dependency _*org.jboss.shrinkwrap:shrinkwrap-api*_ from _*1.0.1*_ to 
_*1.2.2*_.

Thank you very much for your attention.
 Best regards,
h1. Dependency tree----
{noformat}
[INFO] org.apache.deltaspike.test:test-utils:jar:1.9.5-SNAPSHOT
[INFO] +- org.jboss.shrinkwrap:shrinkwrap-api:jar:1.0.1:compile
[INFO] +- 
org.jboss.arquillian.container:arquillian-container-test-spi:jar:1.1.8.Final:compile
[INFO] |  +- 
org.jboss.arquillian.container:arquillian-container-spi:jar:1.1.8.Final:compile
[INFO] |  |  \- (org.jboss.shrinkwrap:shrinkwrap-api:jar:1.2.2:compile - 
omitted for conflict with 1.0.1)
[INFO] |  \- 
org.jboss.arquillian.container:arquillian-container-test-api:jar:1.1.8.Final:compile
[INFO] |     \- (org.jboss.shrinkwrap:shrinkwrap-api:jar:1.2.2:compile - 
omitted for conflict with 1.0.1)
[INFO] \- 
org.jboss.arquillian.junit:arquillian-junit-container:jar:1.1.8.Final:test
[INFO]    \- org.jboss.shrinkwrap:shrinkwrap-impl-base:jar:1.2.2:test
[INFO]       +- (org.jboss.shrinkwrap:shrinkwrap-api:jar:1.2.2:test - omitted 
for conflict with 1.0.1)
[INFO]       \- org.jboss.shrinkwrap:shrinkwrap-spi:jar:1.2.2:test
[INFO]          \- (org.jboss.shrinkwrap:shrinkwrap-api:jar:1.2.2:test - 
omitted for conflict with 1.0.1)
{noformat}

  was:
h1. Issue description

Hi, there are multiple versions of _*org.jboss.shrinkwrap:shrinkwrap-api*_ in 
_*deltaspike\deltaspike\test-utils*_. As shown in the following dependency 
tree, according to Maven's “nearest wins” strategy, only 
_*org.jboss.shrinkwrap:shrinkwrap-api:1.0.1*_ can be loaded, and 
_*org.jboss.shrinkwrap:shrinkwrap-api:1.2.2*_ will be shadowed.

However, several methods defined in shadowed version 
_*org.jboss.shrinkwrap:shrinkwrap-api:1.2.2*_ is referenced by client project 
via 
*_org.jboss.arquillian.container:arquillian-container-test-spi:1.1.8.Final_*, 
but missing in the actually loaded version 
_*org.jboss.shrinkwrap:shrinkwrap-api:1.0.1*_.

For instance, the following missing methods(defined in 
_*org.jboss.shrinkwrap:shrinkwrap-api:1.2.2*_) is actually referenced by 
_*deltaspike\deltaspike\test-utils*_, which will introduce a runtime 
error(i.e., "NoSuchMethodErrors") into _*deltaspike\deltaspike\test-utils*_.

1. _*org.jboss.shrinkwrap.api.ArchiveEvent: void init 
(org.jboss.shrinkwrap.api.ArchivePath,org.jboss.shrinkwrap.api.asset.Asset)*_ 
is invoked by _*deltaspike\deltaspike\test-utils*_ via the following path:
{noformat}
paths--
<org.apache.deltaspike.test.arquillian.DeltaSpikeServerUtilAppender: 
org.jboss.shrinkwrap.api.Archive buildArchive()> 
deltaspike\deltaspike\test-utils\target\classes
<org.jboss.shrinkwrap.impl.base.container.ContainerBase: 
org.jboss.shrinkwrap.api.Archive 
addAsManifestResource(org.jboss.shrinkwrap.api.asset.Asset,java.lang.String)> 
Repositories\org\jboss\shrinkwrap\shrinkwrap-impl-base\1.2.2\shrinkwrap-impl-base-1.2.2.jar
<org.jboss.shrinkwrap.impl.base.container.ContainerBase: 
org.jboss.shrinkwrap.api.Archive 
addAsManifestResource(org.jboss.shrinkwrap.api.asset.Asset,org.jboss.shrinkwrap.api.ArchivePath)>
 
Repositories\org\jboss\shrinkwrap\shrinkwrap-impl-base\1.2.2\shrinkwrap-impl-base-1.2.2.jar
<org.jboss.shrinkwrap.impl.base.container.ContainerBase: 
org.jboss.shrinkwrap.api.Archive 
add(org.jboss.shrinkwrap.api.asset.Asset,org.jboss.shrinkwrap.api.ArchivePath)> 
Repositories\org\jboss\shrinkwrap\shrinkwrap-impl-base\1.2.2\shrinkwrap-impl-base-1.2.2.jar
<org.jboss.shrinkwrap.impl.base.MemoryMapArchiveBase: 
org.jboss.shrinkwrap.api.Archive 
add(org.jboss.shrinkwrap.api.asset.Asset,org.jboss.shrinkwrap.api.ArchivePath)> 
Repositories\org\jboss\shrinkwrap\shrinkwrap-impl-base\1.2.2\shrinkwrap-impl-base-1.2.2.jar
<org.jboss.shrinkwrap.impl.base.MemoryMapArchiveBase: 
org.jboss.shrinkwrap.api.Archive 
addAsset(org.jboss.shrinkwrap.api.ArchivePath,org.jboss.shrinkwrap.api.asset.Asset)>
 
Repositories\org\jboss\shrinkwrap\shrinkwrap-impl-base\1.2.2\shrinkwrap-impl-base-1.2.2.jar
<org.jboss.shrinkwrap.impl.base.MemoryMapArchiveBase: 
org.jboss.shrinkwrap.api.asset.Asset 
invokeHandlers(org.jboss.shrinkwrap.api.ArchivePath,org.jboss.shrinkwrap.api.asset.Asset)>
 
Repositories\org\jboss\shrinkwrap\shrinkwrap-impl-base\1.2.2\shrinkwrap-impl-base-1.2.2.jar
<org.jboss.shrinkwrap.api.ArchiveEvent: void 
<init>(org.jboss.shrinkwrap.api.ArchivePath,org.jboss.shrinkwrap.api.asset.Asset)>{noformat}
2. _*org.jboss.shrinkwrap.api.IllegalOverwriteException: void init 
(java.lang.String)*_ is invoked by _*deltaspike\deltaspike\test-utils*_ via the 
following path:
{noformat}
paths--
<org.apache.deltaspike.test.arquillian.DeltaSpikeServerUtilAppender: 
org.jboss.shrinkwrap.api.Archive buildArchive()> 
deltaspike\deltaspike\test-utils\target\classes
<org.jboss.shrinkwrap.impl.base.container.ContainerBase: 
org.jboss.shrinkwrap.api.Archive 
addAsManifestResource(org.jboss.shrinkwrap.api.asset.Asset,java.lang.String)> 
Repositories\org\jboss\shrinkwrap\shrinkwrap-impl-base\1.2.2\shrinkwrap-impl-base-1.2.2.jar
<org.jboss.shrinkwrap.impl.base.container.ContainerBase: 
org.jboss.shrinkwrap.api.Archive 
addAsManifestResource(org.jboss.shrinkwrap.api.asset.Asset,org.jboss.shrinkwrap.api.ArchivePath)>
 
Repositories\org\jboss\shrinkwrap\shrinkwrap-impl-base\1.2.2\shrinkwrap-impl-base-1.2.2.jar
<org.jboss.shrinkwrap.impl.base.container.ContainerBase: 
org.jboss.shrinkwrap.api.Archive 
add(org.jboss.shrinkwrap.api.asset.Asset,org.jboss.shrinkwrap.api.ArchivePath)> 
Repositories\org\jboss\shrinkwrap\shrinkwrap-impl-base\1.2.2\shrinkwrap-impl-base-1.2.2.jar
<org.jboss.shrinkwrap.impl.base.MemoryMapArchiveBase: 
org.jboss.shrinkwrap.api.Archive 
add(org.jboss.shrinkwrap.api.asset.Asset,org.jboss.shrinkwrap.api.ArchivePath)> 
Repositories\org\jboss\shrinkwrap\shrinkwrap-impl-base\1.2.2\shrinkwrap-impl-base-1.2.2.jar
<org.jboss.shrinkwrap.impl.base.MemoryMapArchiveBase: 
org.jboss.shrinkwrap.api.Archive 
addAsset(org.jboss.shrinkwrap.api.ArchivePath,org.jboss.shrinkwrap.api.asset.Asset)>
 
Repositories\org\jboss\shrinkwrap\shrinkwrap-impl-base\1.2.2\shrinkwrap-impl-base-1.2.2.jar
<org.jboss.shrinkwrap.api.IllegalOverwriteException: void 
<init>(java.lang.String)>{noformat}
3. _*org.jboss.shrinkwrap.api.ArchiveEvent: 
org.jboss.shrinkwrap.api.asset.Asset getHandledAsset()*_ is invoked by 
_*deltaspike\deltaspike\test-utils*_ via the following path:
{noformat}
paths--
<org.apache.deltaspike.test.arquillian.DeltaSpikeServerUtilAppender: 
org.jboss.shrinkwrap.api.Archive buildArchive()> 
deltaspike\deltaspike\test-utils\target\classes
<org.jboss.shrinkwrap.impl.base.container.ContainerBase: 
org.jboss.shrinkwrap.api.Archive 
addAsManifestResource(org.jboss.shrinkwrap.api.asset.Asset,java.lang.String)> 
Repositories\org\jboss\shrinkwrap\shrinkwrap-impl-base\1.2.2\shrinkwrap-impl-base-1.2.2.jar
<org.jboss.shrinkwrap.impl.base.container.ContainerBase: 
org.jboss.shrinkwrap.api.Archive 
addAsManifestResource(org.jboss.shrinkwrap.api.asset.Asset,org.jboss.shrinkwrap.api.ArchivePath)>
 
Repositories\org\jboss\shrinkwrap\shrinkwrap-impl-base\1.2.2\shrinkwrap-impl-base-1.2.2.jar
<org.jboss.shrinkwrap.impl.base.container.ContainerBase: 
org.jboss.shrinkwrap.api.Archive 
add(org.jboss.shrinkwrap.api.asset.Asset,org.jboss.shrinkwrap.api.ArchivePath)> 
Repositories\org\jboss\shrinkwrap\shrinkwrap-impl-base\1.2.2\shrinkwrap-impl-base-1.2.2.jar
<org.jboss.shrinkwrap.impl.base.MemoryMapArchiveBase: 
org.jboss.shrinkwrap.api.Archive 
add(org.jboss.shrinkwrap.api.asset.Asset,org.jboss.shrinkwrap.api.ArchivePath)> 
Repositories\org\jboss\shrinkwrap\shrinkwrap-impl-base\1.2.2\shrinkwrap-impl-base-1.2.2.jar
<org.jboss.shrinkwrap.impl.base.MemoryMapArchiveBase: 
org.jboss.shrinkwrap.api.Archive 
addAsset(org.jboss.shrinkwrap.api.ArchivePath,org.jboss.shrinkwrap.api.asset.Asset)>
 
Repositories\org\jboss\shrinkwrap\shrinkwrap-impl-base\1.2.2\shrinkwrap-impl-base-1.2.2.jar
<org.jboss.shrinkwrap.impl.base.MemoryMapArchiveBase: 
org.jboss.shrinkwrap.api.asset.Asset 
invokeHandlers(org.jboss.shrinkwrap.api.ArchivePath,org.jboss.shrinkwrap.api.asset.Asset)>
 
Repositories\org\jboss\shrinkwrap\shrinkwrap-impl-base\1.2.2\shrinkwrap-impl-base-1.2.2.jar
<org.jboss.shrinkwrap.api.ArchiveEvent: org.jboss.shrinkwrap.api.asset.Asset 
getHandledAsset()>{noformat}
h1. Suggested fixing solutions

Upgrade dependency _*org.jboss.shrinkwrap:shrinkwrap-api*_ from _*1.0.1*_ to 
_*1.2.2*_.

Thank you very much for your attention.
 Best regards,
h1. Dependency tree----
{noformat}
[INFO] org.apache.deltaspike.test:test-utils:jar:1.9.5-SNAPSHOT
 [INFO] +- *org.jboss.shrinkwrap:shrinkwrap-api:jar:1.0.1:compile*
 [INFO] +- 
org.jboss.arquillian.container:arquillian-container-test-spi:jar:1.1.8.Final:compile
 [INFO] | +- 
org.jboss.arquillian.container:arquillian-container-spi:jar:1.1.8.Final:compile
 [INFO] | | +- 
org.jboss.arquillian.core:arquillian-core-spi:jar:1.1.8.Final:compile
 [INFO] | | | - 
org.jboss.arquillian.core:arquillian-core-api:jar:1.1.8.Final:compile
 [INFO] | | +- 
org.jboss.arquillian.config:arquillian-config-api:jar:1.1.8.Final:compile
 [INFO] | | | - 
(org.jboss.shrinkwrap.descriptors:shrinkwrap-descriptors-api-base:jar:2.0.0-alpha-7:compile
 - omitted for duplicate)
 [INFO] | | +- 
org.jboss.arquillian.config:arquillian-config-impl-base:jar:1.1.8.Final:compile
 [INFO] | | | +- 
(org.jboss.arquillian.config:arquillian-config-api:jar:1.1.8.Final:compile - 
omitted for duplicate)
 [INFO] | | | +- 
(org.jboss.arquillian.core:arquillian-core-api:jar:1.1.8.Final:compile - 
omitted for duplicate)
 [INFO] | | | +- 
(org.jboss.arquillian.core:arquillian-core-spi:jar:1.1.8.Final:compile - 
omitted for duplicate)
 [INFO] | | | - 
org.jboss.shrinkwrap.descriptors:shrinkwrap-descriptors-spi:jar:2.0.0-alpha-7:compile
 [INFO] | | | - 
(org.jboss.shrinkwrap.descriptors:shrinkwrap-descriptors-api-base:jar:2.0.0-alpha-7:compile
 - omitted for duplicate)
 [INFO] | | +- *(org.jboss.shrinkwrap:shrinkwrap-api:jar:1.2.2:compile - 
omitted for conflict with 1.0.1)*
 [INFO] | | - 
org.jboss.shrinkwrap.descriptors:shrinkwrap-descriptors-api-base:jar:2.0.0-alpha-7:compile
 [INFO] | +- 
org.jboss.arquillian.test:arquillian-test-spi:jar:1.1.8.Final:compile
 [INFO] | | +- 
(org.jboss.arquillian.core:arquillian-core-spi:jar:1.1.8.Final:compile - 
omitted for duplicate)
 [INFO] | | - 
org.jboss.arquillian.test:arquillian-test-api:jar:1.1.8.Final:compile
 [INFO] | | - 
(org.jboss.arquillian.core:arquillian-core-api:jar:1.1.8.Final:compile - 
omitted for duplicate)
 [INFO] | - 
org.jboss.arquillian.container:arquillian-container-test-api:jar:1.1.8.Final:compile
 [INFO] | - *(org.jboss.shrinkwrap:shrinkwrap-api:jar:1.2.2:compile - omitted 
for conflict with 1.0.1)*
 [INFO] +- org.apache.maven:maven-artifact:jar:3.0:compile
 [INFO] | - org.codehaus.plexus:plexus-utils:jar:2.0.4:compile
 [INFO] +- junit:junit:jar:4.10:test
 [INFO] | - org.hamcrest:hamcrest-core:jar:1.1:test
 [INFO] - 
org.jboss.arquillian.junit:arquillian-junit-container:jar:1.1.8.Final:test
 [INFO] +- org.jboss.arquillian.junit:arquillian-junit-core:jar:1.1.8.Final:test
 [INFO] | - (org.jboss.arquillian.test:arquillian-test-spi:jar:1.1.8.Final:test 
- omitted for duplicate)
 [INFO] +- 
(org.jboss.arquillian.test:arquillian-test-api:jar:1.1.8.Final:compile - scope 
updated from test; omitted for duplicate)
 [INFO] +- (org.jboss.arquillian.test:arquillian-test-spi:jar:1.1.8.Final:test 
- omitted for duplicate)
 [INFO] +- 
(org.jboss.arquillian.container:arquillian-container-test-api:jar:1.1.8.Final:test
 - omitted for duplicate)
 [INFO] +- 
(org.jboss.arquillian.container:arquillian-container-test-spi:jar:1.1.8.Final:test
 - omitted for duplicate)
 [INFO] +- 
org.jboss.arquillian.core:arquillian-core-impl-base:jar:1.1.8.Final:test
 [INFO] | +- 
(org.jboss.arquillian.core:arquillian-core-api:jar:1.1.8.Final:compile - scope 
updated from test; omitted for duplicate)
 [INFO] | - (org.jboss.arquillian.core:arquillian-core-spi:jar:1.1.8.Final:test 
- omitted for duplicate)
 [INFO] +- 
org.jboss.arquillian.test:arquillian-test-impl-base:jar:1.1.8.Final:test
 [INFO] | +- 
(org.jboss.arquillian.test:arquillian-test-api:jar:1.1.8.Final:test - omitted 
for duplicate)
 [INFO] | - (org.jboss.arquillian.test:arquillian-test-spi:jar:1.1.8.Final:test 
- omitted for duplicate)
 [INFO] +- 
org.jboss.arquillian.container:arquillian-container-impl-base:jar:1.1.8.Final:test
 [INFO] | +- 
(org.jboss.arquillian.core:arquillian-core-api:jar:1.1.8.Final:compile - scope 
updated from test; omitted for duplicate)
 [INFO] | +- 
(org.jboss.arquillian.core:arquillian-core-spi:jar:1.1.8.Final:test - omitted 
for duplicate)
 [INFO] | +- 
(org.jboss.arquillian.config:arquillian-config-api:jar:1.1.8.Final:test - 
omitted for duplicate)
 [INFO] | +- 
(org.jboss.arquillian.config:arquillian-config-impl-base:jar:1.1.8.Final:test - 
omitted for duplicate)
 [INFO] | +- 
(org.jboss.arquillian.container:arquillian-container-spi:jar:1.1.8.Final:test - 
omitted for duplicate)
 [INFO] | - 
(org.jboss.shrinkwrap.descriptors:shrinkwrap-descriptors-spi:jar:2.0.0-alpha-7:compile
 - scope updated from test; omitted for duplicate)
 [INFO] +- 
org.jboss.arquillian.container:arquillian-container-test-impl-base:jar:1.1.8.Final:test
 [INFO] | +- 
(org.jboss.arquillian.container:arquillian-container-spi:jar:1.1.8.Final:test - 
omitted for duplicate)
 [INFO] | +- 
(org.jboss.arquillian.test:arquillian-test-api:jar:1.1.8.Final:test - omitted 
for duplicate)
 [INFO] | +- 
(org.jboss.arquillian.container:arquillian-container-test-api:jar:1.1.8.Final:test
 - omitted for duplicate)
 [INFO] | - 
(org.jboss.arquillian.container:arquillian-container-test-spi:jar:1.1.8.Final:test
 - omitted for duplicate)
 [INFO] - org.jboss.shrinkwrap:shrinkwrap-impl-base:jar:1.2.2:test
 [INFO] +- (org.jboss.shrinkwrap:shrinkwrap-api:jar:1.2.2:test - omitted for 
conflict with 1.0.1)
 [INFO] - org.jboss.shrinkwrap:shrinkwrap-spi:jar:1.2.2:test
 [INFO] - (org.jboss.shrinkwrap:shrinkwrap-api:jar:1.2.2:test - omitted for 
conflict with 1.0.1){noformat}


> “NoSuchMethodErrors” due to multiple versions of 
> org.jboss.shrinkwrap:shrinkwrap-api:jar
> ----------------------------------------------------------------------------------------
>
>                 Key: DELTASPIKE-1414
>                 URL: https://issues.apache.org/jira/browse/DELTASPIKE-1414
>             Project: DeltaSpike
>          Issue Type: Bug
>      Security Level: public(Regular issues) 
>          Components: Tests
>    Affects Versions: 1.9.5
>            Reporter: Bing-ok
>            Priority: Major
>
> h1. Issue description
> Hi, there are multiple versions of _*org.jboss.shrinkwrap:shrinkwrap-api*_ in 
> _*deltaspike\deltaspike\test-utils*_. As shown in the following dependency 
> tree, according to Maven's “nearest wins” strategy, only 
> _*org.jboss.shrinkwrap:shrinkwrap-api:1.0.1*_ can be loaded, and 
> _*org.jboss.shrinkwrap:shrinkwrap-api:1.2.2*_ will be shadowed.
> However, several methods defined in shadowed version 
> _*org.jboss.shrinkwrap:shrinkwrap-api:1.2.2*_ is referenced by client project 
> via 
> *_org.jboss.arquillian.container:arquillian-container-test-spi:1.1.8.Final_*, 
> but missing in the actually loaded version 
> _*org.jboss.shrinkwrap:shrinkwrap-api:1.0.1*_.
> For instance, the following missing methods(defined in 
> _*org.jboss.shrinkwrap:shrinkwrap-api:1.2.2*_) is actually referenced by 
> _*deltaspike\deltaspike\test-utils*_, which will introduce a runtime 
> error(i.e., "NoSuchMethodErrors") into _*deltaspike\deltaspike\test-utils*_.
> 1. _*org.jboss.shrinkwrap.api.ArchiveEvent: void init 
> (org.jboss.shrinkwrap.api.ArchivePath,org.jboss.shrinkwrap.api.asset.Asset)*_ 
> is invoked by _*deltaspike\deltaspike\test-utils*_ via the following path:
> {noformat}
> paths--
> <org.apache.deltaspike.test.arquillian.DeltaSpikeServerUtilAppender: 
> org.jboss.shrinkwrap.api.Archive buildArchive()> 
> deltaspike\deltaspike\test-utils\target\classes
> <org.jboss.shrinkwrap.impl.base.container.ContainerBase: 
> org.jboss.shrinkwrap.api.Archive 
> addAsManifestResource(org.jboss.shrinkwrap.api.asset.Asset,java.lang.String)> 
> Repositories\org\jboss\shrinkwrap\shrinkwrap-impl-base\1.2.2\shrinkwrap-impl-base-1.2.2.jar
> <org.jboss.shrinkwrap.impl.base.container.ContainerBase: 
> org.jboss.shrinkwrap.api.Archive 
> addAsManifestResource(org.jboss.shrinkwrap.api.asset.Asset,org.jboss.shrinkwrap.api.ArchivePath)>
>  
> Repositories\org\jboss\shrinkwrap\shrinkwrap-impl-base\1.2.2\shrinkwrap-impl-base-1.2.2.jar
> <org.jboss.shrinkwrap.impl.base.container.ContainerBase: 
> org.jboss.shrinkwrap.api.Archive 
> add(org.jboss.shrinkwrap.api.asset.Asset,org.jboss.shrinkwrap.api.ArchivePath)>
>  
> Repositories\org\jboss\shrinkwrap\shrinkwrap-impl-base\1.2.2\shrinkwrap-impl-base-1.2.2.jar
> <org.jboss.shrinkwrap.impl.base.MemoryMapArchiveBase: 
> org.jboss.shrinkwrap.api.Archive 
> add(org.jboss.shrinkwrap.api.asset.Asset,org.jboss.shrinkwrap.api.ArchivePath)>
>  
> Repositories\org\jboss\shrinkwrap\shrinkwrap-impl-base\1.2.2\shrinkwrap-impl-base-1.2.2.jar
> <org.jboss.shrinkwrap.impl.base.MemoryMapArchiveBase: 
> org.jboss.shrinkwrap.api.Archive 
> addAsset(org.jboss.shrinkwrap.api.ArchivePath,org.jboss.shrinkwrap.api.asset.Asset)>
>  
> Repositories\org\jboss\shrinkwrap\shrinkwrap-impl-base\1.2.2\shrinkwrap-impl-base-1.2.2.jar
> <org.jboss.shrinkwrap.impl.base.MemoryMapArchiveBase: 
> org.jboss.shrinkwrap.api.asset.Asset 
> invokeHandlers(org.jboss.shrinkwrap.api.ArchivePath,org.jboss.shrinkwrap.api.asset.Asset)>
>  
> Repositories\org\jboss\shrinkwrap\shrinkwrap-impl-base\1.2.2\shrinkwrap-impl-base-1.2.2.jar
> <org.jboss.shrinkwrap.api.ArchiveEvent: void 
> <init>(org.jboss.shrinkwrap.api.ArchivePath,org.jboss.shrinkwrap.api.asset.Asset)>{noformat}
> 2. _*org.jboss.shrinkwrap.api.IllegalOverwriteException: void init 
> (java.lang.String)*_ is invoked by _*deltaspike\deltaspike\test-utils*_ via 
> the following path:
> {noformat}
> paths--
> <org.apache.deltaspike.test.arquillian.DeltaSpikeServerUtilAppender: 
> org.jboss.shrinkwrap.api.Archive buildArchive()> 
> deltaspike\deltaspike\test-utils\target\classes
> <org.jboss.shrinkwrap.impl.base.container.ContainerBase: 
> org.jboss.shrinkwrap.api.Archive 
> addAsManifestResource(org.jboss.shrinkwrap.api.asset.Asset,java.lang.String)> 
> Repositories\org\jboss\shrinkwrap\shrinkwrap-impl-base\1.2.2\shrinkwrap-impl-base-1.2.2.jar
> <org.jboss.shrinkwrap.impl.base.container.ContainerBase: 
> org.jboss.shrinkwrap.api.Archive 
> addAsManifestResource(org.jboss.shrinkwrap.api.asset.Asset,org.jboss.shrinkwrap.api.ArchivePath)>
>  
> Repositories\org\jboss\shrinkwrap\shrinkwrap-impl-base\1.2.2\shrinkwrap-impl-base-1.2.2.jar
> <org.jboss.shrinkwrap.impl.base.container.ContainerBase: 
> org.jboss.shrinkwrap.api.Archive 
> add(org.jboss.shrinkwrap.api.asset.Asset,org.jboss.shrinkwrap.api.ArchivePath)>
>  
> Repositories\org\jboss\shrinkwrap\shrinkwrap-impl-base\1.2.2\shrinkwrap-impl-base-1.2.2.jar
> <org.jboss.shrinkwrap.impl.base.MemoryMapArchiveBase: 
> org.jboss.shrinkwrap.api.Archive 
> add(org.jboss.shrinkwrap.api.asset.Asset,org.jboss.shrinkwrap.api.ArchivePath)>
>  
> Repositories\org\jboss\shrinkwrap\shrinkwrap-impl-base\1.2.2\shrinkwrap-impl-base-1.2.2.jar
> <org.jboss.shrinkwrap.impl.base.MemoryMapArchiveBase: 
> org.jboss.shrinkwrap.api.Archive 
> addAsset(org.jboss.shrinkwrap.api.ArchivePath,org.jboss.shrinkwrap.api.asset.Asset)>
>  
> Repositories\org\jboss\shrinkwrap\shrinkwrap-impl-base\1.2.2\shrinkwrap-impl-base-1.2.2.jar
> <org.jboss.shrinkwrap.api.IllegalOverwriteException: void 
> <init>(java.lang.String)>{noformat}
> 3. _*org.jboss.shrinkwrap.api.ArchiveEvent: 
> org.jboss.shrinkwrap.api.asset.Asset getHandledAsset()*_ is invoked by 
> _*deltaspike\deltaspike\test-utils*_ via the following path:
> {noformat}
> paths--
> <org.apache.deltaspike.test.arquillian.DeltaSpikeServerUtilAppender: 
> org.jboss.shrinkwrap.api.Archive buildArchive()> 
> deltaspike\deltaspike\test-utils\target\classes
> <org.jboss.shrinkwrap.impl.base.container.ContainerBase: 
> org.jboss.shrinkwrap.api.Archive 
> addAsManifestResource(org.jboss.shrinkwrap.api.asset.Asset,java.lang.String)> 
> Repositories\org\jboss\shrinkwrap\shrinkwrap-impl-base\1.2.2\shrinkwrap-impl-base-1.2.2.jar
> <org.jboss.shrinkwrap.impl.base.container.ContainerBase: 
> org.jboss.shrinkwrap.api.Archive 
> addAsManifestResource(org.jboss.shrinkwrap.api.asset.Asset,org.jboss.shrinkwrap.api.ArchivePath)>
>  
> Repositories\org\jboss\shrinkwrap\shrinkwrap-impl-base\1.2.2\shrinkwrap-impl-base-1.2.2.jar
> <org.jboss.shrinkwrap.impl.base.container.ContainerBase: 
> org.jboss.shrinkwrap.api.Archive 
> add(org.jboss.shrinkwrap.api.asset.Asset,org.jboss.shrinkwrap.api.ArchivePath)>
>  
> Repositories\org\jboss\shrinkwrap\shrinkwrap-impl-base\1.2.2\shrinkwrap-impl-base-1.2.2.jar
> <org.jboss.shrinkwrap.impl.base.MemoryMapArchiveBase: 
> org.jboss.shrinkwrap.api.Archive 
> add(org.jboss.shrinkwrap.api.asset.Asset,org.jboss.shrinkwrap.api.ArchivePath)>
>  
> Repositories\org\jboss\shrinkwrap\shrinkwrap-impl-base\1.2.2\shrinkwrap-impl-base-1.2.2.jar
> <org.jboss.shrinkwrap.impl.base.MemoryMapArchiveBase: 
> org.jboss.shrinkwrap.api.Archive 
> addAsset(org.jboss.shrinkwrap.api.ArchivePath,org.jboss.shrinkwrap.api.asset.Asset)>
>  
> Repositories\org\jboss\shrinkwrap\shrinkwrap-impl-base\1.2.2\shrinkwrap-impl-base-1.2.2.jar
> <org.jboss.shrinkwrap.impl.base.MemoryMapArchiveBase: 
> org.jboss.shrinkwrap.api.asset.Asset 
> invokeHandlers(org.jboss.shrinkwrap.api.ArchivePath,org.jboss.shrinkwrap.api.asset.Asset)>
>  
> Repositories\org\jboss\shrinkwrap\shrinkwrap-impl-base\1.2.2\shrinkwrap-impl-base-1.2.2.jar
> <org.jboss.shrinkwrap.api.ArchiveEvent: org.jboss.shrinkwrap.api.asset.Asset 
> getHandledAsset()>{noformat}
> h1. Suggested fixing solutions
> Upgrade dependency _*org.jboss.shrinkwrap:shrinkwrap-api*_ from _*1.0.1*_ to 
> _*1.2.2*_.
> Thank you very much for your attention.
>  Best regards,
> h1. Dependency tree----
> {noformat}
> [INFO] org.apache.deltaspike.test:test-utils:jar:1.9.5-SNAPSHOT
> [INFO] +- org.jboss.shrinkwrap:shrinkwrap-api:jar:1.0.1:compile
> [INFO] +- 
> org.jboss.arquillian.container:arquillian-container-test-spi:jar:1.1.8.Final:compile
> [INFO] |  +- 
> org.jboss.arquillian.container:arquillian-container-spi:jar:1.1.8.Final:compile
> [INFO] |  |  \- (org.jboss.shrinkwrap:shrinkwrap-api:jar:1.2.2:compile - 
> omitted for conflict with 1.0.1)
> [INFO] |  \- 
> org.jboss.arquillian.container:arquillian-container-test-api:jar:1.1.8.Final:compile
> [INFO] |     \- (org.jboss.shrinkwrap:shrinkwrap-api:jar:1.2.2:compile - 
> omitted for conflict with 1.0.1)
> [INFO] \- 
> org.jboss.arquillian.junit:arquillian-junit-container:jar:1.1.8.Final:test
> [INFO]    \- org.jboss.shrinkwrap:shrinkwrap-impl-base:jar:1.2.2:test
> [INFO]       +- (org.jboss.shrinkwrap:shrinkwrap-api:jar:1.2.2:test - omitted 
> for conflict with 1.0.1)
> [INFO]       \- org.jboss.shrinkwrap:shrinkwrap-spi:jar:1.2.2:test
> [INFO]          \- (org.jboss.shrinkwrap:shrinkwrap-api:jar:1.2.2:test - 
> omitted for conflict with 1.0.1)
> {noformat}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to