安装Jpype库后,提示ImportError: DLL load failed: 找不到指定的模块

【问题现象】

Python版本为Python3.7. 通过pip安装Jpype1,能正常安装成功,但是在运行Jpype代码时,却报错了,报错内容为:ImportError: DLL load failed: 找不到指定的模块

示例代码:

# _*_ coding:utf-8 _*_
import jpype

jvmPath = jpype.getDefaultJVMPath()       # 默认的JVM路径
print(jvmPath)
jpype.startJVM(jvmPath)
jpype.java.lang.System.out.println("hello world!")
jpype.java.lang.System.out.println("I hate you!")
jpype.shutdownJVM()

【定位思路】

通过查看_jpackage.py文件,发现的确未声明_jpype库

 

【解决思路】

1、网上有博客说,可能是因为jpype未安装成功,因此通过pip uninstall jpype,然后重装的方式。

结果:失败,重新安装后在jpype文件夹下仍然没有_jpype.py文件

 

2、通过手动安装wheel包的方式

wheel包下载地址:https://www.lfd.uci.edu/~gohlke/pythonlibs/

把whl包放在site-packages路径下,通过pip install C:\python3\Lib\site-packages\jpype\XXXX.whl来安装。

结果:无论是0.7版本还是0.6版本都失败

【2019/12/30更新】在官网https://www.lfd.uci.edu/~gohlke/pythonlibs/#jpype 下载JPype1-0.6.3-cp37-cp37m-win_amd64.whl 安装包。通过这种方式,我发现python3又可以安装成功了,真的神奇!

我的经过:在site-packages路径下直接安装whl包,程序会自动卸载之前版本,然后重新安装新的版本。然后我就这样成功了

 

3、更新pip

因为本人的pip版本不 是最新版本,网上有博客说更新下pip就能下载到正确的版本了。因此根据界面提示(python -m pip install --upgrade pip)进行了更新。

结果:依旧失败!

 

4、生成在jpype文件下,生成一个_jpype.py空脚本

结果:意料之中的失败!

 

5、有看到其他博客说,其实_jpype库是_jpype.cp37-win_amd64.pyd,只需要在系统变量path中加上pyd文件的路径即可 解决,

结果:从目前来看 ,这个解释是有道理的,但是我无论在path加路径(C:\python3\lib\site-packages)还是将pyd文件放在Jpype文件夹中都是失败的;包括将import _jpype改成import _jpype.cp37-win_amd64.pyd

6、最后想,如果Python3不行的话,要不要试试python2.7。结果成功了!我去!

不过在过程中,遇到一个问题:error: Microsoft Visual C++ 9.0 is required

解决方法是下载个VCForPython27.msi 可以解决。当然关于Visual C++问题的解决,网上有很多方法,但我是通过这个安装包解决的。如果有需要的同学,可以私信我。
 

最终,花了2个多小时,解决了这么个小问题。

这个问题可能是由于缺少相应的模块导致的。根据引用中的解决方案,你可以尝试以下步骤来解决这个问题: 1. 确保你已经正确安装了相应的模块。比如,在使用`import numpy`时出错,可以尝试使用`pip install numpy`来安装最新版本的numpy包。 2. 如果安装时出现了版本不匹配的错误,可以尝试寻安装与你的程序兼容的版本。例如,在引用中,作者遇到了与PyQt5版本不匹配的问题,通过安装`PyQtWebEngine-Qt5`包来解决。 3. 如果以上步骤都没有解决问题,你可以尝试使用国内镜像网站进行安装。例如,在引用中,作者使用了清华大学镜像网站进行安装tensorflow-gpu的指定版本。 总结起来,你可以通过检查安装模块是否正确,尝试安装兼容的版本,以及使用国内镜像网站来解决`import -jpype importerror: dll load failed: 不到指定模块`的问题。123 #### 引用[.reference_title] - *1* [import numpy出现ImportError: DLL load failed: 不到指定模块的解决方案](https://blog.csdn.net/weixin_43178406/article/details/130545314)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}} ] [.reference_item] - *2* [PyQtWebEngine from PyQt5.QtWebEngineWidgets import *:ImportError: DLL load failed / 不到指定的...](https://blog.csdn.net/qq_33253054/article/details/129756634)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}} ] [.reference_item] - *3* [tensorflow在import提示错误--ImportError: DLL load failed: 不到指定模块——解决办法](https://blog.csdn.net/weixin_42649699/article/details/106984656)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}} ] [.reference_item] [ .reference_list ]
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值