2011-07-25 95 views
0

這個基本的主題仍然令我困惑。讓我們假設我在部署的戰爭中擁有一個圖書館。我在GF/lib和GF/domain /../庫中有libs庫文件讀取或搜索的順序是什麼?
如果我有衝突的瓶子會發生什麼(例如SLF4j與上述路徑中的diff版本)?Glassfish 3 Classloader Sequence

我們使用activemq 5.5.0,它依賴於較舊的SLF4j庫(使用log4j),我們的web應用程序使用當前的SLF4j版本(使用logback)並繼續碰撞。錯誤。

任何想法或解釋?
感謝
斯文

回答

1

內應用的耳朵/戰爭/ jar文件的庫被加載最後,但隨後在同一文件夾中我還沒有發現任何東西,詳細的順序。

這有不同的庫位置負荷訂單表:http://download.oracle.com/docs/cd/E19226-01/820-7695/6niugesfp/index.html#indexterm-28

此談論的方式來控制單個庫文件夾中的順序:http://www.java.net/node/704037

如果是自己部署的ActiveMQ,也許你可以打開jar包並刪除較舊的SLF4J庫?這樣你可以綁定SLF4J來爲這兩個部分進行logback。

+0

activemq-all-5.5.0.jar不包含作爲庫的jar文件,而是包含類文件。這是不幸的,沒有選擇。 – javadude

+0

我通過使用來自activemq軟件包的單個文件解決了問題,但未使用「all」文件 – javadude