首页 > 解决方案 > 从 Java 应用程序启动外部 jar 文件

问题描述

我想从我的一个 java 应用程序中执行一个外部 jar 文件。执行以下代码(程序 1)时,应立即启动 jar(程序 2):

        Process proc = Runtime.getRuntime().exec("c:\\program files\\java\\jre1.8.0_161\\bin\\java -jar C:\\DocumentCloud\\Workspace\\Wordseller_V2\\wordseller_2.jar " + fileName);

奇怪的是,上面的代码并没有立即启动 prgram 2。相反,程序 2 将在程序 1 完成/关闭后启动。我觉得这种行为很奇怪,但我找不到解决问题的方法。我已经尝试从单独的线程启动 program2,但这没有帮助。

您的支持将不胜感激。提前非常感谢。

打赌问候

乌里

标签: javajarexternal

解决方案


没有更多信息真的很难回答这个问题,但是根据您显示的代码,问题很可能是因为您没有调用waitFor()该进程,您的程序正在异步启动该进程并完成。如果您希望您的程序等待其他进程完成,您将不得不阻塞程序的主线程。


推荐阅读