Java CreateProcess错误=193,%1不是有效的Win32应用程序
我正在尝试读写可扩展链接格式(ELF),下面是我遇到的错误行Java CreateProcess错误=193,%1不是有效的Win32应用程序,java,swing,netbeans,promise,Java,Swing,Netbeans,Promise,我正在尝试读写可扩展链接格式(ELF),下面是我遇到的错误行 p = r.exec("./optimizer " + sourceFile + " " + sourceFile + "a" + " " + "--all -i"); 运行这一行后,我得到如下错误: java.io.IOException: Cannot run program "./optimizer": CreateProcess error=193, %1 is not a valid Win32
p = r.exec("./optimizer " + sourceFile + " " + sourceFile + "a" + " " + "--all -i");
运行这一行后,我得到如下错误:
java.io.IOException: Cannot run program "./optimizer": CreateProcess
error=193, %1 is not a valid Win32 application
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1048)
at java.lang.Runtime.exec(Runtime.java:620)
at java.lang.Runtime.exec(Runtime.java:450)
at java.lang.Runtime.exec(Runtime.java:347)
at GUIMode.GUIMode.actionPerformed(GUIMode.java:213)
最有可能的是,您的代码没有在您认为的目录中运行 使用此处给出的OP代码: 现在将其与优化器所在的位置进行比较
一般来说,除非您控制JVM的调用方式,否则您不能依赖相对路径。最有可能的情况是,您的代码没有在您认为的目录中运行 使用此处给出的OP代码: 现在将其与优化器所在的位置进行比较
一般来说,除非您控制JVM的调用方式,否则您不能依赖相对路径。导致“%1不是有效的Win32应用程序”消息的可能原因包括:
- 应用程序的路径名不正确
- Windows无法将以路径名命名的文件识别为可执行文件,或者
- 该文件是32位可执行文件,但由于某些原因,它试图加载64位DLL
优化器
文件不在该目录中
请尝试以下操作:
“/optimizer”
sourceFile
参数包含空格,则用字符串数组替换命令字符串;e、 g
exec(new String[]{
"C:/path/to/optimizer",
sourceFile, sourceFile + "a", "--all", "-i"});
“%1不是有效的Win32应用程序”消息可能有以下几种原因:
- 应用程序的路径名不正确
- Windows无法将以路径名命名的文件识别为可执行文件,或者
- 该文件是32位可执行文件,但由于某些原因,它试图加载64位DLL
优化器
文件不在该目录中
请尝试以下操作:
“/optimizer”
sourceFile
参数包含空格,则用字符串数组替换命令字符串;e、 g
exec(new String[]{
"C:/path/to/optimizer",
sourceFile, sourceFile + "a", "--all", "-i"});