gpt4 book ai didi

java - 从现有的 java gui 程序在新终端中打开 jar 文件

转载 作者:行者123 更新时间:2023-11-29 09:01:31 26 4
gpt4 key购买 nike

我有一个 Java GUI 程序,我想在用户单击指定按钮时从该程序在新终端(没有 GUI)中运行另一个 jar 文件。有人可以建议我该怎么做吗?

最佳答案

启动新终端需要使用 ProcessBuilder 或 System.exec 生成新进程。这取决于操作系统及其配置。在 linux xterm 中运行独立的 jar 文件是这样启动的:

 File dir = new File("/directory/to/the/jar/file");
String jarName ="standalone.jar";
ProcessBuilder processBuilder = new ProcessBuilder("/usr/bin/xterm","-e","java -jar "+jarName);
processBuilder.directory(dir);
processBuilder.start();

如果没有独立的 jar,则必须使用 -cp -parameter 将类路径指定为 java 可执行文件...

备选方案可能只是使用单独的 ClassLoader 并重定向 System.out 和 System.in 来运行给定的 jar。这需要为正在运行的 jar 编写某种 GUI。如果只需要过程的输出而不需要终端仿真,这并不难。只是将 System.out 重定向到某个文本区域。如果对运行的输入/输出有更多要求,那么可以使用用 java 编写的终端仿真器为您做这些事情。

关于java - 从现有的 java gui 程序在新终端中打开 jar 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17136282/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com