Nuitka打包报错

前言

使用Nuitka打包python项目时发生报错

报错

Nuitka-Plugins:INFO: pyqt5: Found 2 files DLLs from 'OpenSSL' PyQt5 installation.

Nuitka-Inclusion:INFO: Analyzing dependencies of 'app.dist\app.exe'.

Detecting used DLLs: 2.6%|▋ | 1/39, app.exeTraceback (most recent call last):

File "C:\Users\yuai.pyenv\pyenv-win\versions\3.9.4\lib\site-packages\nuitka_main _.py", line 155, in

main()

File "C:\Users\yuai.pyenv\pyenv-win\versions\3.9.4\lib\site-packages\nuitka_main _.py", line 141, in main

MainControl.main()

File "C:\Users\yuai.pyenv\pyenv-win\versions\3.9.4\lib\site-packages\nuitka\MainControl.py", line 1109, in main

_main()

File "C:\Users\yuai.pyenv\pyenv-win\versions\3.9.4\lib\site-packages\nuitka\MainControl.py", line 1012, in _main

detectUsedDLLs(

File "C:\Users\yuai.pyenv\pyenv-win\versions\3.9.4\lib\site-packages\nuitka\freezer\Standalone.py", line 766, in detectUsedDLLs

_detectUsedDLLs(

File "C:\Users\yuai.pyenv\pyenv-win\versions\3.9.4\lib\site-packages\nuitka\freezer\Standalone.py", line 688, in _detectUsedDLLs

used_dlls = _detectBinaryDLLs(

File "C:\Users\yuai.pyenv\pyenv-win\versions\3.9.4\lib\site-packages\nuitka\freezer\Standalone.py", line 593, in _detectBinaryDLLs

return detectBinaryPathDLLsWindowsDependencyWalker(

File "C:\Users\yuai.pyenv\pyenv-win\versions\3.9.4\lib\site-packages\nuitka\freezer\DllDependenciesWin32.py", line 97, in detectBinaryPathDLLsWindowsDependencyWalker

result = detectDLLsWithDependencyWalker(

File "C:\Users\yuai.pyenv\pyenv-win\versions\3.9.4\lib\site-packages\nuitka\freezer\DependsExe.py", line 221, in detectDLLsWithDependencyWalker

result = parseDependsExeOutput(output_filename)

File "C:\Users\yuai.pyenv\pyenv-win\versions\3.9.4\lib\site-packages\nuitka\freezer\DependsExe.py", line 162, in parseDependsExeOutput

return _parseDependsExeOutput2(getFileContentByLine(filename, encoding="latin1"))

File "C:\Users\yuai.pyenv\pyenv-win\versions\3.9.4\lib\site-packages\nuitka\freezer\DependsExe.py", line 154, in _parseDependsExeOutput2

assert os.path.isfile(dll_filename), (dll_filename, line)

AssertionError: ('d:\\x04\x0\x04\x04\x04\\x04\x04\x04\x04\t4\x04\x04\x04\x04\jvms_v~1.5_a\store\jdk11\bin\api-ms-win-crt-runtime-l1-1-0.dll', ' [ ^6] d:\\x04\x04\x04\tools\\x04\x04\x04\x4\x04\x04\jvms_v~1.5_a\store\jdk11\bin\API-MS-WIN-CRT-RUNTIME-L1-1-0.DLL')

bash 复制代码
Nuitka-Plugins:INFO: pyqt5: Found 2 files DLLs from 'OpenSSL' PyQt5 installation.
Nuitka-Inclusion:INFO: Analyzing dependencies of 'app.dist\app.exe'.
Detecting used DLLs: 2.6%|▋                        | 1/39, app.exeTraceback (most recent call last):
  File "C:\Users\yuai\.pyenv\pyenv-win\versions\3.9.4\lib\site-packages\nuitka\__main__.py", line 155, in <module>
    main()
  File "C:\Users\yuai\.pyenv\pyenv-win\versions\3.9.4\lib\site-packages\nuitka\__main__.py", line 141, in main
    MainControl.main()
  File "C:\Users\yuai\.pyenv\pyenv-win\versions\3.9.4\lib\site-packages\nuitka\MainControl.py", line 1109, in main
    _main()
  File "C:\Users\yuai\.pyenv\pyenv-win\versions\3.9.4\lib\site-packages\nuitka\MainControl.py", line 1012, in _main
    detectUsedDLLs(
  File "C:\Users\yuai\.pyenv\pyenv-win\versions\3.9.4\lib\site-packages\nuitka\freezer\Standalone.py", line 766, in detectUsedDLLs
    _detectUsedDLLs(
  File "C:\Users\yuai\.pyenv\pyenv-win\versions\3.9.4\lib\site-packages\nuitka\freezer\Standalone.py", line 688, in _detectUsedDLLs
    used_dlls = _detectBinaryDLLs(
  File "C:\Users\yuai\.pyenv\pyenv-win\versions\3.9.4\lib\site-packages\nuitka\freezer\Standalone.py", line 593, in _detectBinaryDLLs
    return detectBinaryPathDLLsWindowsDependencyWalker(
  File "C:\Users\yuai\.pyenv\pyenv-win\versions\3.9.4\lib\site-packages\nuitka\freezer\DllDependenciesWin32.py", line 97, in detectBinaryPathDLLsWindowsDependencyWalker
    result = detectDLLsWithDependencyWalker(
  File "C:\Users\yuai\.pyenv\pyenv-win\versions\3.9.4\lib\site-packages\nuitka\freezer\DependsExe.py", line 221, in detectDLLsWithDependencyWalker
    result = parseDependsExeOutput(output_filename)
  File "C:\Users\yuai\.pyenv\pyenv-win\versions\3.9.4\lib\site-packages\nuitka\freezer\DependsExe.py", line 162, in parseDependsExeOutput
    return _parseDependsExeOutput2(getFileContentByLine(filename, encoding="latin1"))
  File "C:\Users\yuai\.pyenv\pyenv-win\versions\3.9.4\lib\site-packages\nuitka\freezer\DependsExe.py", line 154, in _parseDependsExeOutput2
    assert os.path.isfile(dll_filename), (dll_filename, line)
AssertionError: ('d:\\\x04\\\x04\x04\x04\x04\\tools\\\x04\x\x04\x04\x04\\jvms_v~1.5_a\\store\\jdk11\\bin\\api-ms-win-crt-runtime-l1-1-0.dll', '               [ ^6] d:\\\x04\x04\x04\x04\x04\x04\x04\x04\\\x04\x04\x04\x04\\tools\\\x04\x04\x04\x04\x04\x04\x04\x04\\jvms_v~1.5_a\\store\\jdk11\\bin\\API-MS-WIN-CRT-RUNTIME-L1-1-0.DLL')

解决方法

发生这种错误的原因是我的Java.exe即我Java环境的路径有特殊字符,如中文。。。。解决方法其实也就是将Java换成纯英文一类的不带特殊字符的路径即可。

比如我这里换成了

bash 复制代码
D:\Java\jvms_v2.1.5_amd64

之前用习惯了自己搭建的武器库,导致武器库的路径有大量的中文,只不过我没太想到的是这玩意调用Java的频率不低。没办法只能给Java换路径,导致我重构了武器库,裂开

相关推荐
秋月霜风3 分钟前
Web爬虫应用功能及需求设计
前端·爬虫·python
鱼跃鹰飞4 分钟前
Leetcode面试经典150题-172.阶乘后的零
java·算法·leetcode·面试·职场和发展
小小大侠客5 分钟前
责任链模式实现规则校验
java·责任链模式
焱童鞋9 分钟前
java中使用BP网络进行回归
java·bp
huang_hai_an10 分钟前
解决Intellij IDEA maven 自动设置JDK为JDK1.5
java·maven·intellij-idea
BUG指挥官11 分钟前
RocketMQ消费者消费的时候,宕机了,消息会丢失吗?
java·rocketmq·java-rocketmq
nongcunqq30 分钟前
python 将 aac 转为 mp3,保持原有目录结构
开发语言·python·aac
J不A秃V头A36 分钟前
iText 5 通过创建 Document 对象,并使用 PdfWriter 将内容写入 PDF 文件
java·pdf
神州数码云基地37 分钟前
云原生|浅谈云原生中的对象存储之MinIO 的使用
开发语言·云原生·php
KBDYD101039 分钟前
数据结构--单链表创建、增删改查功能以及与结构体合用
c语言·开发语言·数据结构·算法