我正在尝试创建一个Java应用程序,通过单击按钮应该调用脚本python。在按钮的方法中,我设置了PythonInterpreter和一些我需要作为参数传递给脚本的变量:
PythonInterpreter.initialize(System.getProperties(), System.getProperties(), new String[0]);
PythonInterpreter interp = new PythonInterpreter();
// Insert arguments as input for the script
interp.set("path", path);
interp.set("logcatName", dev1+"_Video"+i+".txt");
interp.set("logcatSecondDevice", dev2+"_Video"+i+".txt");
interp.set("descriptionPath", descriptionPath);
interp.execfile("C:\\adp\\cutVideo.py");
以下是通过传递上述参数来调用脚本中的函数的指令:
if __name__ == '__main__':
cut_video(path, logcatName, logcatSecondDevice, descriptionPath)
如果我使用NetBeans运行它,那么一切都很完美但是如果我尝试运行我应该制作的jar文件,它就不再起作用了。 还有另一种方法可以让它发挥作用吗?
答案 0 :(得分:0)
我通过将脚本放在另一个文件夹上并使用以下指令调用它来解决:
ProcessBuilder pb = new ProcessBuilder("cmd", "/c", "start", "python", "C:\\adp\\cutVideo.py", path, descriptionPath);
Process move = pb.start();
感谢所有人的兴趣!