好的,我有一个通过 ProcessBuilder 运行的 python 脚本。一切正常。我遇到的问题是,每当我将参数传递给 python 脚本时,python 脚本都会以 unrecognized argumets
响应。但是,如果我采用确切的命令并将其复制并粘贴到命令提示符中,它运行得非常好。有什么帮助吗?这是我现在所拥有的总体思路:
ProcessBuilder builder = new ProcessBuilder("C:\Python33\" + "python.exe","-u", "C:\...\script.py", "--arg1 " + "argumentValue");
p = builder.start();
最佳答案
将两个单独的参数传递给 ProcessBuilder
而不是连接 --arg1
和 argumentValue
:
ProcessBuilder builder = new ProcessBuilder("C:\\Python33\\python.exe",
"-u",
"C:\\...\\script.py,
"--arg1",
"argumentValue");
否则要执行的程序将看到它无法识别的单个参数 --arg1 argumentValue
。
关于java - ProcessBuilder 无法运行带有参数的 python 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15980057/