我有一个用Python编写的Web应用程序脚本,我存储在我的资源文件夹中。我可以毫无问题地访问该文件,但在部署Java应用程序后执行脚本时遇到问题。要启动我的脚本:
File f = new File(this.getClass.getClassLoader.getResource("/InterWebApp.py").getFile());
Process process = Runtime.getRuntime().exec("python " + f.getPath());
process.waitFor();
这不会启动脚本,或者如果它确实正在立即死亡。当监视类每120秒查看process
时,该进程不活动。我正在公司平台上部署我的应用程序,像gedit newFile
这样的简单流程可以工作并启动窗口,但我无法启动我的Python脚本,我假设是因为当流程启动时它可能没有直接访问资源文件。有什么想法吗?
String scriptFilePath = System.getProperty("user.dir") + "/src/main/java/com/pkg/resources/InterWebApp.py";
Process process = Runtime.getRuntime.exec("python " + scriptFilePath);
之前我尝试过一个绝对路径,但是当我部署应用程序时,我遇到的问题是工作目录包含一个包含资源的JAR,而不是绝对路径中指定的目录结构。