Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/336.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在JBoss6中使用番石榴_Java_Guava_Jboss6.x - Fatal编程技术网

Java 如何在JBoss6中使用番石榴

Java 如何在JBoss6中使用番石榴,java,guava,jboss6.x,Java,Guava,Jboss6.x,我正试图在我的项目中使用番石榴,在启动JBoss时,有很多警告: WARN [ClassLoaderManager] Unexpected error during load of:com.google.common.base.Equivalences$Equals: java.lang.IncompatibleClassChangeError: class com.google.common.base.Equivalences$Equals has interface com.google.

我正试图在我的项目中使用番石榴,在启动JBoss时,有很多警告:

WARN  [ClassLoaderManager] Unexpected error during load of:com.google.common.base.Equivalences$Equals: java.lang.IncompatibleClassChangeError: class com.google.common.base.Equivalences$Equals has interface com.google.common.base.Equivalence as super class
WARN  [ClassLoaderManager] Unexpected error during load of:com.google.common.base.FunctionalEquivalence: java.lang.IncompatibleClassChangeError: class com.google.common.base.FunctionalEquivalence has interface com.google.common.base.Equivalence as super class
WARN  [ClassLoaderManager] Unexpected error during load of:com.google.common.collect.AbstractMapBasedMultiset$1$1: java.lang.IllegalAccessError: class com.google.common.collect.AbstractMapBasedMultiset$1$1 cannot access its superclass com.google.common.collect.Multisets$AbstractEntry
[...]
根据我的研究,它似乎与旧的谷歌收藏不兼容。 此线程来自建议使用jboss scanning.xml。我没有更改,JBoss文档指定此文件用于过滤注释

您是否已经遇到此问题


你能提出一个解决方案吗?

你说得对,google collections和番石榴是不兼容的,它在以下网站上有明确的说明:

番石榴是旧谷歌收藏的完全兼容的超集 图书馆。它还包括多年的bug修复、文档修复和 性能修复,因此我们强烈建议您改用番石榴 谷歌收藏

如果您的应用程序最终同时使用google-collect-1.0.jar和 在同一类路径上,只需删除Google 你会没事的如果不删除它,则会删除它 要么会导致可怕的问题(如果它出现在美洲番石榴之前) 类路径)或甚至永远不会被看到(如果它出现在后面)

所以基本上:要么从类路径中删除google集合,要么确保首先加载guava