当前位置: 首页 > 面试题库 >

如何在Java可执行文件.jar中启动多个主程序?

澹台胜
2023-03-14
问题内容

我正在写一个包含多个包的程序。每个软件包都有其自己的主程序,我希望所有人在解释器执行.jar时同时启动。这似乎是一个非常简单的问题,但是当我环顾四周时,似乎人们正在使用蚂蚁(我以前从未使用过)和其他方法。Eclipse中有没有更简单的方法来编译具有多个启动配置的.jar,更好的是,有没有一种方法可以对其进行硬编码?

如果最好的启动方式是通过蚂蚁。如果要启动,我会写什么样的ant脚本…说com.myapp.package1.main,com.myapp.package2.main和com.myapp.package3.main数据包中的主要程序。提前致谢!


问题答案:

jar清单允许您选择指定不超过一个主类。当您执行java带有-jar标志的调用时。

java -jar myapp.jar

您可以在一个jar中包含多个主类,但是每个主类(上面的可选1除外)都必须使用-classpath标志并指定主类的完全限定名称来调用。

java -classpath myapp.jar com.mypackage.app.Main01 && \
  java -classpath myapp.jar com.mypackage.app.Main02 && \
  java -classpath myapp.jar com.mypackage.app.Main03

上面的示例将生成三个单独的Java VM,每个Java VM都在各自的进程中。显然,这不符合您对“可执行jar”的要求。

另外,您可能希望有一个主要方法来启动单独的线程,以便只有一个进程,但是并发执行。

蚂蚁不是帮助您解决此问题的合适选择。我怀疑您可能想要一个产生多个线程的主方法。随时提供有关您要求的更多信息。



 类似资料:
  • 问题内容: 我正在开发一个GUI应用程序,宁愿只分发一个jar而不是多个jar。 您可以使用清单来控制它吗? 问题答案: 将您的jar合并到一个罐子中。看到这个线程。

  • 问题内容: 我有一个包含两个简单的Java swing文件的程序。 如何为程序制作可执行的jar文件? 问题答案: jar文件只是包含Java文件集合的文件。为了使jar文件可执行,你需要指定 Class在jar文件中的位置。示例代码如下。 编译你的类。要制作一个jar,你还需要创建一个清单文件()。例如, 将编译后的输出类文件(JarExample.class,JarExample $ 1.cl

  • 问题内容: 大家好,菜鸟Java问题。 我有一个Java项目,并且想在可执行jar中包含一个文本文件。现在,该文本文件位于默认程序包中。 InputFlatFile currentFile =新的InputFlatFile(“ src / theFile.txt”); 正如您使用src所看到的那样,我使用该行抓取文件。但是,这不适用于可执行jar。 有人可以让我知道如何将文件保存在可执行jar中,

  • 我将应用程序打包为spring-boot可执行jar文件。我在jar文件的根目录中添加了一个logging.properties,但这个文件似乎对应用程序没有任何影响。如何配置spring-boot可执行jar日志记录?

  • 使用命令获取此错误: jar是用mvn clean包和mvn安装构建的 聚甲醛

  • 问题内容: 我如何从Java程序运行本地jar文件? jar文件不在Java调用程序的类路径中。 问题答案: 我建议你使用并启动一个新的JVM。 以下是一些入门知识: