日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

linux下java调用python脚本,java - 在Linux Terminal中以编程方式从Java调用python脚本 - 堆栈内存溢出...

發(fā)布時間:2025/3/19 linux 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux下java调用python脚本,java - 在Linux Terminal中以编程方式从Java调用python脚本 - 堆栈内存溢出... 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

我正在開發(fā)一個Java應用程序,用于檢查源文件中的補丁程序(是否存在)。 用于檢測補丁程序更改的核心邏輯位于python腳本[titled'patch.py??']中,并且我的Java應用程序與此Python補丁程序腳本進行通信以獲取操作的退出狀態(tài)。

python腳本可以從這里獲得

在Windows中,它工作正常,但在Linux env中。 腳本本身不會被Java應用程序調用。 我不確定哪里出了問題。

我正在使用“ ProcessBuilder”來調用python腳本,并且源代碼如下:

if (System.getProperty("os.name").indexOf("Windows") != -1) {

ArrayList command = new ArrayList();

//Cmd prompt will be launched, if platform is Windows.

command.add("cmd");

command.add("/c");

command.add("python");

command.add("lib/patch.py");

command.add("-d");

command.add(auxSrcFile);

command.add(diffFileLoc);

command.add("--revert"); // switch to revert the patch

pb = new ProcessBuilder(command);

} else {

ArrayList command = new ArrayList();

//xterm will be launched, if platform is Linux.

command.add("xterm");

command.add("-e");

command.add("python");

command.add("lib/patch.py");

command.add("-d");

command.add(auxSrcFile);

command.add(diffFileLoc);

command.add("--revert"); // switch to revert the patch

pb = new ProcessBuilder(command);

}

if (pb != null) {

p = pb.start();

if (p != null) {

p.waitFor();

}

}

int exitStatus = p.exitValue();

if(exitStatus == 1) {

System.out.println("...OK");

System.out.println(" ----Patch detected------");

} else {

System.out.println("...ERROR");

System.out.println(" ----Patch not found------");

}

如果在Windows中運行Java應用程序,則python腳本將被正確調用,而如果在Linux環(huán)境中運行該應用程序,則該腳本將失敗。

建議是受歡迎的!

注意:我可以獨立運行'patch.py??'腳本(在Linux終端中),但是當我嘗試從Java應用程序中調用該腳本時,我將無法調用它,并且總是獲得退出值'0'。

總結

以上是生活随笔為你收集整理的linux下java调用python脚本,java - 在Linux Terminal中以编程方式从Java调用python脚本 - 堆栈内存溢出...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。