0
我正在使用Java和Python爲後端GUI和Python使用Java的項目。 Java程序調用按鈕時使用下面的代碼按下一個Python腳本:從Java jar文件調用python腳本
Runtime r = Runtime.getRuntime();
String pyScript = "resources/script.py";
String scriptPath = getClass().getResource(pyScript).toExternalForm();
// Strip "file/" from path
scriptPath = scriptPath.substring(scriptPath.indexOf("/") + 1);
Process p = r.exec("python " + scriptPath)
的Python腳本位於一個名爲資源,在Java項目的src文件夾文件夾中。當我在我的IDE(IntelliJ)中運行我的程序時,此代碼正常工作,但是當我創建.jar文件並嘗試運行該腳本時,什麼都不會發生。我可以確認程序仍然在.jar文件中找到腳本。 我怎樣才能讓腳本運行?
插入'的System.out.println( 「SCRIPTPATH:」 + SCRIPTPATH);''之前r.exec(...)'。也許這給你一個提示我加 – JimHawkins
@JimHawkins一個JOptionDialog顯示,當我運行jar,它位於python腳本。 –
您可以將腳本從你的src外放置。如果它是src的一部分,它被捆綁在本身是一個緊湊文件的jar文件中。一個Alrernate的方法是在運行時動態創建script.py,執行它並刪除.py文件 – Aditya