如何使用 --add-data?
用法:pyinstaller x.py --add-data="源地址;目标地址"。 windows以;分割,linux以:分割
例如:将 config 目录的所有文件打包到目标的 config 文件夹(不存在会自动创建)下
pyinstaller x.py --add-data ".\\config\\*;.\\config"
可使用多次 --add-data
例如:
pyinstaller x.py -n Demo2.0.3 --key !@)v -i "res\logo.ico" --add-data=".\*.txt;." --add-data=".\*.json;." --add-data="res\*.*;.\res" --add-data="dist\models\*.*;.\models"
.spec文件里如何使用 --add-data
# -*- mode: python ; coding: utf-8 -*- block_cipher = pyi_crypto.PyiBlockCipher(key='!@)v') a = Analysis(['x.py'], pathex=['D:\\Miniconda3\\envs\\cuda11\\Lib\\site-packages', 'D:\\project\\demo'], binaries=[], datas=[('.\\*.json', '.'), ('res\\*.*', '.\\res'), ('dist\\models\\*.*', '.\\models')], hiddenimports=[], hookspath=[], runtime_hooks=[], excludes=[], win_no_prefer_redirects=False, win_private_assemblies=False, cipher=block_cipher, noarchive=False) pyz = PYZ(a.pure, a.zipped_data, cipher=block_cipher) exe = EXE(pyz, a.scripts, [], exclude_binaries=True, name='Demo2.0.3', debug=False, bootloader_ignore_signals=False, strip=False, upx=True, console=False , icon='res\\logo.ico') coll = COLLECT(exe, a.binaries, a.zipfiles, a.datas, strip=False, upx=True, upx_exclude=[], name='Demo2.0.3')
Analysis里的datas就是使用 --add-data对应的地方!
一个[]里,有多个(),每个()以逗号隔开,左边是程序路径,右边是放入打包里的路径!
Tips:自己多打包几次就熟悉了!下一次继续 pyinstaller系列之六:适配32位系统。
源文章:https://blog.csdn.net/u012219045/article/details/114841287?spm=1001.2014.3001.5501