Bing-ok created DELTASPIKE-1414:
-----------------------------------
Summary: “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
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.
As _*org.jboss.shrinkwrap:shrinkwrap-api:1.2.2*_ has not been loaded during the
building process, several methods are missing. However, the missing methods:
1. _*org.jboss.shrinkwrap.api.ArchiveEvent: void init
(org.jboss.shrinkwrap.api.ArchivePath,org.jboss.shrinkwrap.api.asset.Asset)*_
{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)*_
{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()*_
{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}
The above missing methods are actually referenced by
_*deltaspike\deltaspike\test-utils*_, which will cause “NoSuchMethodErrors” at
runtime.
Suggested fixing solutions:
1. Upgrade dependency _*org.jboss.shrinkwrap:shrinkwrap-api*_ from _*1.0.1*_ to
_*1.2.2*_.
Thank you very much for your attention.
Best regards,
Dependency tree----
[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)
--
This message was sent by Atlassian Jira
(v8.3.4#803005)