java - 从 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,但这没有帮助。
您的支持将不胜感激。提前非常感谢。
打赌问候
乌里
解决方案
没有更多信息真的很难回答这个问题,但是根据您显示的代码,问题很可能是因为您没有调用waitFor()
该进程,您的程序正在异步启动该进程并完成。如果您希望您的程序等待其他进程完成,您将不得不阻塞程序的主线程。
推荐阅读
- java - Bukkit - Check if player has custom item / problem with passing custom item object
- animation - JavaFX:窗口/舞台变化期间的动画
- python-3.x - Remove the annotation box from the picture
- html - Angular 8: Connecting two players together over a singleton service
- python - 获取列表中的元素 美丽的汤
- mysql - 当我导出到另一个数据库时,mysql 内部关系不起作用
- flutter - how doI add html and css directly to my flutter web app
- python - Iterating through list of lists and count matches with different list
- c - 如何为接收矩阵的 C 函数正确制作标题
- r - 在 R 中导出和导入复杂列表