AI智能
改变未来

IDEA中通过Java调用Python脚本报错


现象描述

我在IDEA中调试一段Java调用Python的代码,一直报下面的错误。

我的代码:

public class ScriptTest {public static void main(String[] args) {String result = \"\";try {Process process = Runtime.getRuntime().ad8exec(\"python D:/xxl/my.py  test中文\" );InputStreamReader ir = new InputStreamReader(process.getInputStream(),\"GBK\");LineNumberReader input = new LineNumberReader(ir);result = input.readLine();input.close();ir.close();//            process.waitFor();} catch (Exception e) {System.out.println(\"调用python脚本并读取结果时出错:\" + e.getMessage());}System.out.println(result);}}

my.py的内容非常简单,如下:

import sysif __name__ == \"__main__\":filename = sys.argv[1]print (filename)

当我执行上面的代码时,一直报下面的错误:

Connected to the target VM, address: \'127.0.0.1:25684\', transport: \'socket\'调用python脚本并读取结果时出错:Cannot run program \"python\": CreateProcess error=2, 系统找不到指定的文件。

查了下这个错误,是因为找不到Python这个命令。

但是我通过命令行执行python是可以的,一时间感觉很疑惑。

解决方案

查了下,在IDAE中使用运行命令,其实是不能使用系统设置的环境变量的。需要在IDEA中另外设置。

设置完之后再执行就OK了。

赞(0) 打赏
未经允许不得转载:爱站程序员基地 » IDEA中通过Java调用Python脚本报错