1
我有多個可運行jar文件。每個jar文件都引用相同的外部jar文件。當我嘗試使用eclipse單獨導出可運行jar文件時,每個導出都會創建一個目錄,例如jar1_lib,jar2_lib。這些目錄中的每一個都包含相同的引用jar文件。在多個可運行jar中使用單個外部jar
我想讓每個可運行jar文件都引用一個包含所需外部jar的單個實例的單個目錄。
這可能嗎?
在此先感謝。
我有多個可運行jar文件。每個jar文件都引用相同的外部jar文件。當我嘗試使用eclipse單獨導出可運行jar文件時,每個導出都會創建一個目錄,例如jar1_lib,jar2_lib。這些目錄中的每一個都包含相同的引用jar文件。在多個可運行jar中使用單個外部jar
我想讓每個可運行jar文件都引用一個包含所需外部jar的單個實例的單個目錄。
這可能嗎?
在此先感謝。
從技術上講,這是可能的,但你需要更新所有使用這個jar文件的項目的源代碼。
下面,有示例代碼this comment
JarClassLoader jcl = new JarClassLoader();
jcl.add("myjar.jar"); //Load jar file
jcl.add(new URL("http://myserver.com/myjar.jar")); //Load jar from a URL
jcl.add(new FileInputStream("myotherjar.jar")); //Load jar file from stream
jcl.add("myclassfolder/"); //Load class folder
jcl.add("myjarlib/"); //Recursively load all jar files in the folder/sub-folder(s)
JclObjectFactory factory = JclObjectFactory.getInstance();
//Create object of loaded class
Object obj = factory.create(jcl,"mypackage.MyClass");