java调python管道堵塞_Java调用python时出现: ImportError: No module named解决方法

首先背景是这样的:

1、python环境下调用没有问题,如果有问题那么肯定是named后面的包没有安装,或是安装没有成功。至于如何安装网上有很多的教程,比如pip / easy_install 等方式都可以去安装, 这里就不做累述。

2、对于python环境下没有问题时,用java去调用的时候出现了上述no module named , 而此时分两种情况去看

A、如果你要部署的是windows的话,对于java web工程来说,python的文件依赖都会去java的WEB-INF下面的lib下的Lib去找相对应的py文件

B、如果是linux的话,没特殊指定的情况下,他也会去当前工程的WEB-INF下面的lib下的Lib去找。

所有解决的方式就是给对应的python指定lib的目录

Properties props = new Properties();

props.put("python.home", "/usr/lib/python2.6");

再执行PythonInterpreter方法之前加上上面的方法,PythonInterpreter.initialize(preprops, props, s);

其中preprops 是Properties preprops = System.getProperties();

s为传递参数的字符数组 例如: String[] s = {host,port,username,password};

3、最终java调用python时会先去找python.home下面的Lib文件,这样就可以解决上面的问题。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值