[
https://issues.jboss.org/browse/SHRINKWRAP-408?page=com.atlassian.jira.pl...
]
Marek Novotny updated SHRINKWRAP-408:
-------------------------------------
Attachment: dep-tree.txt
Dependency tree with changed managed scopes
org.jboss.shrinkwrap.resolver:shrinkwrap-resolver-bom:1.0.0-beta-6
specifies scope in dependency management section
-------------------------------------------------------------------------------------------------------------------
Key: SHRINKWRAP-408
URL:
https://issues.jboss.org/browse/SHRINKWRAP-408
Project: ShrinkWrap
Issue Type: Bug
Affects Versions: 1.0.0-beta-6
Reporter: Marek Novotny
Attachments: dep-tree.txt
org.jboss.shrinkwrap.resolver:shrinkwrap-resolver-bom:1.0.0-beta-6 specifies scope
runtime in dependency management section.
{code:xml}
<dependencies>
<dependency>
<groupId>org.jboss.shrinkwrap.resolver</groupId>
<artifactId>shrinkwrap-resolver-api</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.jboss.shrinkwrap.resolver</groupId>
<artifactId>shrinkwrap-resolver-api-maven</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.jboss.shrinkwrap.resolver</groupId>
<artifactId>shrinkwrap-resolver-impl-maven</artifactId>
<version>${project.version}</version>
<scope>runtime</scope> <!-- NO REASON WHY TO SPECIFY SCOPE -->
</dependency>
</dependencies>
{code}
BOM generally shouldn't specify scope of managed dependency at all.
Right now Seam2 which uses org.jboss.arquillian:arquillian-bom:1.0.0.Final has got in
dependency hierarchy that shrinkwrap-resolver-bom which changes scopes of its dependencies
from test to runtime and that causes conflicts in application test war/ear with other
libraries which are there in archive for functionality purposes.
One example of affection is this conflict between google-collections from shrinkwrap
dependency tree and guava from other runtime dependency hierarchy:
{noformat}
19:30:33,910 SEVERE [javax.enterprise.resource.webcontainer.jsf.config] (MSC service
thread 1-3) Critical error during deployment: : java.lang.NoSuchMethodError:
com.google.common.base.Platform.precomputeCharMatcher(Lcom/google/common/base/CharMatcher;)Lcom/google/common/base/CharMatcher;
at com.google.common.base.CharMatcher.precomputed(CharMatcher.java:657)
[guava-11.0.2.jar:]
at com.google.common.base.CharMatcher.<clinit>(CharMatcher.java:75)
[guava-11.0.2.jar:]
at com.google.common.base.Splitter.on(Splitter.java:125) [guava-11.0.2.jar:]
at
org.richfaces.resource.ResourceLibraryFactoryImpl.<clinit>(ResourceLibraryFactoryImpl.java:43)
[richfaces-core-impl-4.2.2.Final.jar:4.2.2.Final]
at org.richfaces.application.DefaultModule.configure(DefaultModule.java:32)
[richfaces-core-impl-4.2.2.Final.jar:4.2.2.Final]
at org.richfaces.application.ServicesFactoryImpl.init(ServicesFactoryImpl.java:27)
[richfaces-core-impl-4.2.2.Final.jar:4.2.2.Final]
at
org.richfaces.application.InitializationListener.createFactory(InitializationListener.java:129)
[richfaces-core-impl-4.2.2.Final.jar:4.2.2.Final]
at
org.richfaces.application.InitializationListener.onStart(InitializationListener.java:67)
[richfaces-core-impl-4.2.2.Final.jar:4.2.2.Final]
at
org.richfaces.application.InitializationListener.processEvent(InitializationListener.java:147)
[richfaces-core-impl-4.2.2.Final.jar:4.2.2.Final]
at javax.faces.event.SystemEvent.processListener(SystemEvent.java:106)
[jboss-jsf-api_2.1_spec-2.0.1.Final.jar:2.0.1.Final]
at com.sun.faces.application.ApplicationImpl.processListeners(ApplicationImpl.java:2168)
[jsf-impl-2.1.7-jbossorg-2.jar:]
at
com.sun.faces.application.ApplicationImpl.invokeListenersFor(ApplicationImpl.java:2144)
[jsf-impl-2.1.7-jbossorg-2.jar:]
at com.sun.faces.application.ApplicationImpl.publishEvent(ApplicationImpl.java:302)
[jsf-impl-2.1.7-jbossorg-2.jar:]
at org.jboss.seam.jsf.SeamApplication.publishEvent(SeamApplication.java:458)
[jboss-seam.jar:2.3.0.CR1-SNAPSHOT]
at com.sun.faces.config.ConfigManager.publishPostConfigEvent(ConfigManager.java:601)
[jsf-impl-2.1.7-jbossorg-2.jar:]
at com.sun.faces.config.ConfigManager.initialize(ConfigManager.java:370)
[jsf-impl-2.1.7-jbossorg-2.jar:]
at com.sun.faces.config.ConfigureListener.contextInitialized(ConfigureListener.java:225)
[jsf-impl-2.1.7-jbossorg-2.jar:]
at
org.apache.catalina.core.StandardContext.contextListenerStart(StandardContext.java:3392)
[jbossweb-7.0.13.Final.jar:]
at org.apache.catalina.core.StandardContext.start(StandardContext.java:3850)
[jbossweb-7.0.13.Final.jar:]
at org.jboss.as.web.deployment.WebDeploymentService.start(WebDeploymentService.java:90)
[jboss-as-web-7.1.1.Final.jar:7.1.1.Final]
at
org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811)
at
org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
[rt.jar:1.6.0_30]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
[rt.jar:1.6.0_30]
at java.lang.Thread.run(Thread.java:662) [rt.jar:1.6.0_30]
19:30:33,964 ERROR
[org.apache.catalina.core.ContainerBase.[jboss.web].[default-host].[/seam-blog]] (MSC
service thread 1-3) Exception sending context initialized event to listener instance of
class com.sun.faces.config.ConfigureListener: java.lang.RuntimeException:
java.lang.NoSuchMethodError:
com.google.common.base.Platform.precomputeCharMatcher(Lcom/google/common/base/CharMatcher;)Lcom/google/common/base/CharMatcher;
at com.sun.faces.config.ConfigureListener.contextInitialized(ConfigureListener.java:292)
[jsf-impl-2.1.7-jbossorg-2.jar:]
at
org.apache.catalina.core.StandardContext.contextListenerStart(StandardContext.java:3392)
[jbossweb-7.0.13.Final.jar:]
at org.apache.catalina.core.StandardContext.start(StandardContext.java:3850)
[jbossweb-7.0.13.Final.jar:]
at org.jboss.as.web.deployment.WebDeploymentService.start(WebDeploymentService.java:90)
[jboss-as-web-7.1.1.Final.jar:7.1.1.Final]
at
org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811)
at
org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
[rt.jar:1.6.0_30]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
[rt.jar:1.6.0_30]
at java.lang.Thread.run(Thread.java:662) [rt.jar:1.6.0_30]
Caused by: java.lang.NoSuchMethodError:
com.google.common.base.Platform.precomputeCharMatcher(Lcom/google/common/base/CharMatcher;)Lcom/google/common/base/CharMatcher;
at com.google.common.base.CharMatcher.precomputed(CharMatcher.java:657)
[guava-11.0.2.jar:]
at com.google.common.base.CharMatcher.<clinit>(CharMatcher.java:75)
[guava-11.0.2.jar:]
at com.google.common.base.Splitter.on(Splitter.java:125) [guava-11.0.2.jar:]
at
org.richfaces.resource.ResourceLibraryFactoryImpl.<clinit>(ResourceLibraryFactoryImpl.java:43)
[richfaces-core-impl-4.2.2.Final.jar:4.2.2.Final]
at org.richfaces.application.DefaultModule.configure(DefaultModule.java:32)
[richfaces-core-impl-4.2.2.Final.jar:4.2.2.Final]
at org.richfaces.application.ServicesFactoryImpl.init(ServicesFactoryImpl.java:27)
[richfaces-core-impl-4.2.2.Final.jar:4.2.2.Final]
at
org.richfaces.application.InitializationListener.createFactory(InitializationListener.java:129)
[richfaces-core-impl-4.2.2.Final.jar:4.2.2.Final]
at
org.richfaces.application.InitializationListener.onStart(InitializationListener.java:67)
[richfaces-core-impl-4.2.2.Final.jar:4.2.2.Final]
at
org.richfaces.application.InitializationListener.processEvent(InitializationListener.java:147)
[richfaces-core-impl-4.2.2.Final.jar:4.2.2.Final]
at javax.faces.event.SystemEvent.processListener(SystemEvent.java:106)
[jboss-jsf-api_2.1_spec-2.0.1.Final.jar:2.0.1.Final]
at com.sun.faces.application.ApplicationImpl.processListeners(ApplicationImpl.java:2168)
[jsf-impl-2.1.7-jbossorg-2.jar:]
at
com.sun.faces.application.ApplicationImpl.invokeListenersFor(ApplicationImpl.java:2144)
[jsf-impl-2.1.7-jbossorg-2.jar:]
at com.sun.faces.application.ApplicationImpl.publishEvent(ApplicationImpl.java:302)
[jsf-impl-2.1.7-jbossorg-2.jar:]
at org.jboss.seam.jsf.SeamApplication.publishEvent(SeamApplication.java:458)
[jboss-seam.jar:2.3.0.CR1-SNAPSHOT]
at com.sun.faces.config.ConfigManager.publishPostConfigEvent(ConfigManager.java:601)
[jsf-impl-2.1.7-jbossorg-2.jar:]
at com.sun.faces.config.ConfigManager.initialize(ConfigManager.java:370)
[jsf-impl-2.1.7-jbossorg-2.jar:]
at com.sun.faces.config.ConfigureListener.contextInitialized(ConfigureListener.java:225)
[jsf-impl-2.1.7-jbossorg-2.jar:]
... 8 more
{noformat}
Please check all occurrences of this issue (specifying scope) in all Shrinkwrap BOMs as
it is not good to find out in steps what is next remaining.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see:
http://www.atlassian.com/software/jira