2017-06-05 68 views
1

我想从java调用python文件。但它会抛出以下错误。从java调用python文件会抛出错误

java.io.IOException: Cannot run program "python": CreateProcess error=2, The system cannot find the file specified 

的代码,我曾尝试是:

Process p = Runtime.getRuntime().exec("python C:\\Project\\Script\\Test.py"); 
    BufferedReader in = new BufferedReader(new InputStreamReader(p.getInputStream())); 
    System.out.println(in.readLine()); 

可能是什么问题呢?

+0

我想下面的链接可以帮助你,再次【JAVA的ProcessBuilder无法查找文件指定](https://stackoverflow.com/questions/28204342/java-processbuilder-cannot-find-file-specified) –

回答

0

Runtime.exec预计没有路径信息的文件位于用户目录中,而不是在您指定用作工作目录的目录中。 尝试使用此代码一次。

Runtime rt = Runtime.getRuntime(); 
Process prs; 
File Dir_temp = new File("C:\\Project\\Script\\"); 
prs = rt.exec(new File(Dir_temp, "Test.py").getAbsolutePath(), null, Dir_temp); 
prs.waitFor(); 
prs.destroy(); 
+0

它抛出java.io.IOException:无法运行程序“C:\ Project \ FBLogin \ Test.py”(在目录“C:\ Project \ Script”中):CreateProcess错误= 193,%1不是有效的Win32应用程序 –