IDEA中通过Java调用Python脚本报错
现象描述#
我在IDEA中调试一段Java调用Python的代码,一直报下面的错误。
我的代码:
public class ScriptTest {
public static void main(String[] args) {
String result = "";
try {
Process process = Runtime.getRuntime().exec("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 sys
if __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了。
作者:程序员自由之路
出处:https://www.cnblogs.com/54chensongxia/p/15070614.html
版权:本作品采用「署名-非商业性使用-相同方式共享 4.0 国际」许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?