java调用python,无法启动第三方库

focusxy 2019-03-14 10:07:17
请问下,在用java 的runtime调用py脚本时,发现只要py中导入第三方sklearn库,就无法启动py脚本,有遇到类似问题的老哥吗,求解答,谢谢了
...全文
877 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
小huuhui的lady 2021-01-02
  • 打赏
  • 举报
回复
引用 8 楼 格调001 的回复:
[quote=引用 7 楼 qingdujun 的回复:] 解决方案:如py中有调用第三方库,将第一个参数写成解释器的绝对地址即可。

String[] args = new String[] {"/usr/local/bin/python3", python-file-path, arg1, arg2};
Process process = Runtime.getRuntime().exec(args);
大佬,换了绝对路径还是不行阿[/quote] 在命令行中输入 whitch python3.7 ,然后将路径放在第一个参数里面即可,这是我的路径,/Library/Frameworks/Python.framework/Versions/3.7/bin/python3.7
格调001 2020-02-05
  • 打赏
  • 举报
回复
引用 7 楼 qingdujun 的回复:
解决方案:如py中有调用第三方库,将第一个参数写成解释器的绝对地址即可。

String[] args = new String[] {"/usr/local/bin/python3", python-file-path, arg1, arg2};
Process process = Runtime.getRuntime().exec(args);
大佬,换了绝对路径还是不行阿
qingdujun 2019-08-22
  • 打赏
  • 举报
回复
解决方案:如py中有调用第三方库,将第一个参数写成解释器的绝对地址即可。

String[] args = new String[] {"/usr/local/bin/python3", python-file-path, arg1, arg2};
Process process = Runtime.getRuntime().exec(args);
kudier 2019-06-10
  • 打赏
  • 举报
回复
runtime调用python执行nunmpy失败的原因大部分都是在使用pycharm时,pycharm中自带的python路径和你计算机中配置的路径不统一造成的,导的包都不在同一个地方要怎么调用?
focusxy 2019-05-08
  • 打赏
  • 举报
回复
引用 3 楼 qq_34805745 的回复:
你好楼主,我想请问的是。你是用java,runtime调用python?python引入了第三方库,nunmpy。直接换个python3.7就可以。我是用的anaconda集成的。 jython有使用过吗?
谢谢,嗯嗯先前我用的是python3.6,没有使用过jython
qq_34805745 2019-05-08
  • 打赏
  • 举报
回复
你好楼主,我想请问的是。你是用java,runtime调用python?python引入了第三方库,nunmpy。直接换个python3.7就可以。我是用的anaconda集成的。 jython有使用过吗?
qq_34805745 2019-05-08
  • 打赏
  • 举报
回复
不对呀,你所说的方式我都使用 过还是无法解决,importError:no module named numpy问题 把anconda2卸载装python3.7,java用runtime方式运行,错误 更换为anconda3,也无法运行。 你好你能详细,解答下吗?qq3360133878
ph_123456 2019-04-28
  • 打赏
  • 举报
回复
我的问题解决了,应该是版本问题,我把原来集成Python卸载了,装了个纯Python3.7,就可以了,坑爹,折腾了这么长时间。
ph_123456 2019-04-25
  • 打赏
  • 举报
回复
无论JAVA、C、C++等,只要调用Python第三方库任何一个,都会各种报错,令人崩溃,调用系统库一切正常,这是Python复杂的相互调用路径造成的,暂时没找到好的解决办法,我也卡在这里无解,我用C++调用。

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧