Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/350.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Open exe无法通过Java运行_Java_Swing - Fatal编程技术网

Open exe无法通过Java运行

Open exe无法通过Java运行,java,swing,Java,Swing,我试图打开一个可执行文件,我的代码编译得很好,但仍然没有打开.exe,也没有给我错误。这是从swing gui开始的类。我错过了什么 package kioskapplications; import java.io.IOException; import java.lang.ProcessBuilder; public class OpenSSH { public static void main(String[] args) throws IOException { Str

我试图打开一个可执行文件,我的代码编译得很好,但仍然没有打开.exe,也没有给我错误。这是从swing gui开始的类。我错过了什么

package kioskapplications;

import java.io.IOException;
import java.lang.ProcessBuilder;

public class OpenSSH {
  public static void main(String[] args) throws IOException {

    String folder = "C:\\Program Files (x86)\\Kiosk Applications\\Poderosa\\";
    String exe = "Poderosa.exe";

    ProcessBuilder p = new ProcessBuilder();
    p.command(folder + exe);
    p.start();
  }
}

在发出命令之前,请尝试设置Process Builder的目录。使用p上的方法为其提供一个工作目录,然后使用
命令(String…command)
方法设置命令。

尝试使用
int result=p.waitFor()
并查看该命令是否返回退出代码(通常除了
0
之外的任何内容都表示该命令因某种原因失败)。您还应该读取进程输出,因为这有时会导致程序暂停(如果未读取输出缓冲区)。您还可以使用
ProcessBuilder#directory
将进程的工作目录更改为可执行文件所在的同一目录…(例如读取进程的输出流,请看一看)使用try catch on
p.start()
并删除
throws
声明,您会得到什么错误代码?@JClassic,这会有什么不同?@user2900314无需担心,我认为抛出声明会使任何错误输出无效