[英]Calling python script from Java using runtime.getruntime.exec
我有一個java web開發項目,想要調用python腳本在后台運行然后繼續使用java。
String command = "cmd.exe /c cd "C:\\path\\to\\py\\" && python script.py";
Process p = Runtime.getRuntime().exec(command);
當我調用它時似乎沒有發生任何事情,但我需要首先更改目錄,因為腳本訪問其目錄中的文件。
謝謝你的幫助
編輯:
正確的答案是添加開始,這是我編輯的代碼
String command = "cmd.exe /c cd "C:\\path\\to\\py\\" && start python script.py";
Process p = Runtime.getRuntime().exec(command);
您可以從Java端設置進程的工作目錄,而不是使用cmd
來更改目錄。 例如
ProcessBuilder pb = new ProcessBuilder("python", "script.py");
pb.directory(new File("C:\\path\\to\\py"));
Process p = pb.start();
您是否將環境配置為支持“可執行”python腳本?
如果沒有,你應該這樣稱呼它:
String command = "cmd.exe /c start python path\to\script\script.py";
Process p = Runtime.getRuntime().exec(command);
start
命令使用其提供的參數(在本例中為腳本本身)運行相應的可執行文件(在本例中為python解釋器)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.