我有2個庫:owls.jar和envy.jar。他們取決於lib jena.jar但兩個不同的,不可修改的版本。使用舊版本的羨慕 - jena.jar,貓頭鷹新 - jena2.jar 我想在Web應用程序togever使用它們與GlassFish 3.0.1運行。我正在使用想法11部署我的網絡應用程序。使用不同版本的相同庫
我的目錄樹是這樣的:
- 的webapp/WEB-INF/lib目錄/ envy.jar
- 的webapp/WEB-INF/lib目錄/ owls.jar
- 的webapp/lib中/羨慕/jena.jar
- 的webapp/lib目錄/貓頭鷹/ jena2.jar
我加入到MANIFEST.MF羨慕的和貓頭鷹這樣的庫類路徑:../../lib/envy/jena.jar
我用-verbose:類選項,我總是從jena.jar。如果我真的得到加載的類使用或不使用envy.jar所有,我總是從jena.jar得到加載類。只有當我從jena2.jar刪除envy.jar然後類負載
的是,有什麼辦法可以同時使用這個庫的?
可能你可以舉一些例子嗎?我只知道如何加載類,然後使用反射來訪問它們,但我不知道如何爲某個3dparty庫加載類。我知道如何加載**貓頭鷹**類,但我怎樣才能加載** jena2 **類的貓頭鷹**庫? – kornero 2012-01-16 14:05:10
不幸的是,我需要使用圖書館,使用** jena **的新版本。而且我還需要另一個使用舊版本** jena **的lib,並且不會再有更新。據我瞭解,沒有辦法做到這一點?或者我可以用我自己的類加載器做?如果是的話,那麼你可能會知道一些我可以讀的關於它的內容(如何爲3dparty庫加載類)? – kornero 2012-01-16 14:13:58