1

我有多个可运行的 jar 文件。这些 jar 文件中的每一个都引用相同的外部 jar 文件。当我尝试使用 eclipse 单独导出可运行的 jar 文件时,每次导出都会创建一个目录,例如 jar1_lib、jar2_lib。这些目录中的每一个都包含相同的引用 jar 文件。

我想让我的每个可运行 jar 文件都引用一个目录,该目录包含所需外部 jar 的单个实例。

这可能吗?

提前致谢。

4

1 回答 1

0

从技术上讲这是可能的,但您需要更新所有使用这个 jar 文件的项目的源代码。

考虑JCL 框架

下面,有来自此评论的示例代码

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");
于 2012-07-27T09:43:20.497 回答