gpt4 book ai didi

java - 线程 "main"中的异常 java.io.IOException : Cannot run program "D:/cygwin/bin/bash": CreateProcess error=193, %1 不是有效的 Win32 应用程序

转载 作者:行者123 更新时间:2023-11-30 11:49:25 26 4
gpt4 key购买 nike

我能够在 java 中使用 Cygwin 运行 shell 脚本。但现在我收到以下消息。

Exception in thread "main" java.io.IOException: Cannot run program "D:/cygwin/bi
n/bash": CreateProcess error=193, %1 is not a valid Win32 application

如何避免这个异常?

代码

{
String cmd;
cmd = "D:/cygwin/bin/bash -c'/bin/ls -la'";
System.out.println("EXECING: " + cmd);
p = Runtime.getRuntime().exec(cmd);

in = p.getInputStream();
br = new BufferedReader(new InputStreamReader(in));
System.out.println("OUT:");
while ((line = br.readLine()) != null) {
System.out.println(line);
}

in = p.getErrorStream();
br = new BufferedReader(new InputStreamReader(in));
System.out.println("ERR:");
while ((line = br.readLine()) != null) {
System.out.println(line);
}

System.out.println();
}

最佳答案

按照评论中的建议,添加 .exe 会解决此问题,但删除 bash.??? 文件也是如此。

在与 bash.exe 相同的目录中有一个名为 bash.??? 的文件(我一直不知道扩展名是什么) Runtime.exec() 试图执行它。

bash.??? 一定是在成功执行后的某个时刻创建的,因此它运行了一次然后失败了。

关于java - 线程 "main"中的异常 java.io.IOException : Cannot run program "D:/cygwin/bin/bash": CreateProcess error=193, %1 不是有效的 Win32 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8400542/

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