1. ModuleNotFoundError: No module named 'jpype'
解决:python 中调用java代码需要安装 jpype1 。
2. ImportError: numpy.core.multiarray failed to import
解决:python 安装numpy。
3. 报错:numpy-1.16.1+mkl-cp37-cp37m-win_amd64.whl is not a supported wheel on this platform.
解决:python版本位数与whl文件位数要保持一致.(本地python32位换成64位)
4. 打包成exe后执行闪退
解决:将.exe文件手动到DOS窗口可查看日志
5. error: Microsoft Visual C++ 14.0 is required. Get it with "Microsoft Visual C++ Build Tools": http://landinghub.visualstudio.com/visual-cpp-build-tools
解决:安装jpype时报的错,由于c++依赖库不存在,所以在对包进行编译的时候出错,故我们可以去直接下载二进制安装包进行安装。(即自动方式安装)
6. Could not install packages due to an EnvironmentError: [WinError 5]
权限不足,需要管理员身份运行
拒绝访问。:
'c:\\program files\\python37\\lib\\site-packages\\pip-18.1.dist-info\\entry_points.txt'
Consider using the `--user` option or check the permissions.
解决一:使用C:\Windows\System32 文件夹下面的cmd.exe
解决二:python -m pip install --upgrade pip改成python -m pip install --user --upgrade pip
7. 打包好的exe执行报错:
ImportError: numpy.core.multiarray failed to import
解决思路,改变控制台的编码格式为utf-8
解决方法01,在控制台中输入 chcp 65001,然后再使用pyinstaller -D xxx.py 打包成功。
解决方法02:源代码中startJVM的顺序调整一下:
app = App(root) classpath = os.path.join(os.path.abspath('.'), './') startJVM(getDefaultJVMPath(), "-ea", "-Djava.class.path=%s" %(classpath)) javaClass = JClass('Test') #问题根因是App()实例初始化在startJVM之后导致的。
8. No matching distribution found for pyinstaller
Could not find a version that satisfies the requirement pyinstaller (from versions: )
No matching distribution found for pyinstaller
解决:网络慢,可通过镜像下载:
pip install pyinstaller -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com
9. Pip install jpype1 报错
building '_jpype' extension
error: Microsoft Visual C++ 14.0 is required. Get it with "Microsoft Visual C++ Build Tools":
解决:下载visualcppbuildtools_full.exe