在 Weblogic 上部署 Nexus

將 Nexus 發佈到 Weblogic 上,啓動 Nexus 時會報錯,仔細看了下錯誤:web

提示 ImmutableSet 沒有 copyOf(Collection ) 方法。app


看了一下異常,又找了一下,緣由爲 nexus 中帶有的 guava.jar 和 weblogic 自身帶有的 guava.jar 衝突。google

查看了下 weblogic 的文檔,weblogic 支持定義類加載的優先級,這就能夠解決了。
修改方法爲: 修改 weblogic.xml ,添加code

<?xml version=」1.0″?>
<weblogic-web-app xmlns=」http://www.bea.com/ns/weblogic/90″ xmlns:xsi=」http://www.w3.org/2001/XMLSchema-instance」>
<context-root>/nexus</context-root>
<container-descriptor>
<!–
<prefer-web-inf-classes>true</prefer-web-inf-classes>
–>
<prefer-application-packages>
<package-name>org.xmlpull</package-name>
<package-name>com.google</package-name>
<package-name>org.slf4j</package-name>
<!–
<package-name>net</package-name>
–>
</prefer-application-packages>
 
<prefer-application-resources>
<resource-name>org.xmlpull</resource-name>
<resource-name>com.google</resource-name>
<resource-name>org.slf4j</resource-name>
<resource-name>META-INF/services/org.xmlpull</resource-name>
<resource-name>META-INF/services/org.slf4j</resource-name>
<!–
<resource-name>META-INF/services/com</resource-name>
<resource-name>META-INF/services/net</resource-name>
–>
</prefer-application-resources>
</container-descriptor>
</weblogic-web-app>

將這個 weblogic.xml 添加到 nexus 的 WEB-INF 目錄下, 從新發布,啓動, OK.
xml

相關文章
相關標籤/搜索