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换路径,导致我重构了武器库,裂开

相关推荐
en-route6 小时前
如何在 Spring Boot 中指定不同的配置文件?
java·spring boot·后端
百锦再6 小时前
在 CentOS 系统上实现定时执行 Python 邮件发送任务
java·linux·开发语言·人工智能·python·centos·pygame
echoyu.6 小时前
消息队列-kafka完结
java·分布式·kafka
七夜zippoe6 小时前
分布式事务性能优化:从故障现场到方案落地的实战手记(二)
java·分布式·性能优化
栀椩6 小时前
springboot配置请求日志
java·spring boot·后端
I'm a winner6 小时前
第五章:Python 数据结构:列表、元组与字典(二)
数据结构·python
番薯大佬6 小时前
Python学习-day8 元组tuple
java·python·学习
何似在人间5756 小时前
Go语言快速入门教程(JAVA转go)——1 概述
java·开发语言·golang
边疆.7 小时前
【C++】继承详解
开发语言·c++·继承
小文数模7 小时前
2025高教社国赛数学建模C题参考论文(含模型和代码)
python·数学建模·matlab