从另外两个可执行jar创建一个可执行jar

时间:2016-11-07 07:21:01

标签: java netbeans jar executable-jar

我想从其他2个可执行jar文件创建一个可执行jar文件。 所以我正在进行一个投注项目,我有两个项目,Client和Monitor。我创建了他们的jar文件,一切都很好。 但有没有办法结合他们的jar文件,所以我可以从1个jar文件运行,所以我不必每次都运行client.jar和monitor.jar?

4 个答案:

答案 0 :(得分:0)

创建另一个项目,并在第三个类路径中包含这两个jar文件。

现在你可以从jar A和Jar B中的main方法中复制相同的代码,并将其粘贴到jar C的main方法中。现在你只能运行Jar了下进行。

答案 1 :(得分:0)

  

但有没有办法合并他们的jar文件,所以我可以从1运行   罐

没有简单的方法可以解压缩然后获取所有要提取的jar文件的所有内容,然后再将其压缩到一个jar中。

你需要谨慎地合并你的Manifest.MF文件,该文件定义了主要方法的主要入口点。

  

注意:但我不确定你是否能够拥有2个主要课程   你的清单文件。您可能必须通过类路径执行   情况下。

答案 2 :(得分:0)

我正在使用netbeans for java。 您想要的最简单方法是创建新项目并将2个jar文件作为库添加到项目中

答案 3 :(得分:0)

可以将这两个jar文件合并到一个jar文件中,但是,如果没有通过命令行指定主类,每个jar文件只能有一个主类运行。

这意味着您必须创建一个新的主类来执行以前的主类,或者最后使用不同的参数运行相同的jar文件两次。

但是,我不建议将这两者结合起来。这两个是单独的项目是有原因的,那你为什么要把它们结合起来呢?此外,如果一个jar文件崩溃,第二个仍然会运行。

如果您仍想将这两者结合起来,我会看到两个选项:

  • 要么创建第三个项目(我假设是maven?),它取决于两个项目并包含新的主类
  • 或者,如果您遇到类加载问题,因为第一种方法将jar放入jar文件,您可以使用maven shade插件获取一个平坦的jar文件。如果您使用第三方库而无法控制资源的加载方式,这有时是必要的。