Py学习  »  Python

通过java在cmd中运行python文件-%1不是有效的Win32应用程序

Embid123 • 4 年前 • 794 次点击  

public class PyTest {
    public static void main(String[] args) {
        Runtime.getRuntime().exec("python src\\gui.py");
    }
}

堆栈跟踪:

我知道,在64位计算机上使用32位版本解释器执行python代码时会出现此错误。但是在我的64位计算机上只安装了64位版本的python。

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/53065
 
794 次点击  
文章 [ 1 ]  |  最新文章 4 年前
Andreas
Reply   •   1 楼
Andreas    4 年前

命令shell知道如何按文件扩展名运行文件,因此需要调用 cmd.exe Windows外壳程序:

Runtime.getRuntime().exec("cmd.exe /c python src\\gui.py");

作为javadoc exec ProcessBuilder ,所以您的代码应该是:

new ProcessBuilder("cmd.exe", "/c", "python", "src\\gui.py").start();

您甚至可以使用以下命令更改工作目录:

new ProcessBuilder("cmd.exe", "/c", "python", "gui.py")
        .directory(new File("src"))
        .start();