fix: use collect_all for mysql.connector to fix No module named 'mysql' in exe
mysql-connector-python 9.x restructured its package hierarchy. PyInstaller
fails to auto-discover submodules (aio, plugins, locales, etc.).
Updated DatabaseApp.spec to use collect_all('mysql.connector') which
walks the full package tree and bundles all required files.
Rebuilt DatabaseApp.exe (30.9 MB).
This commit is contained in:
@@ -1,12 +1,22 @@
|
|||||||
# -*- mode: python ; coding: utf-8 -*-
|
# -*- mode: python ; coding: utf-8 -*-
|
||||||
|
from PyInstaller.utils.hooks import collect_all
|
||||||
|
|
||||||
|
mysql_datas, mysql_binaries, mysql_hiddenimports = collect_all('mysql.connector')
|
||||||
|
|
||||||
a = Analysis(
|
a = Analysis(
|
||||||
['main.py'],
|
['main.py'],
|
||||||
pathex=[],
|
pathex=[],
|
||||||
binaries=[],
|
binaries=mysql_binaries,
|
||||||
datas=[],
|
datas=mysql_datas,
|
||||||
hiddenimports=['mysql.connector', 'mysql.connector.locales', 'mysql.connector.locales.eng', 'mysql.connector.plugins', 'mysql.connector.plugins.mysql_native_password', 'kivy.core.window.window_sdl2', 'win32timezone'],
|
hiddenimports=mysql_hiddenimports + [
|
||||||
|
'mysql', 'mysql.connector', 'mysql.connector.locales',
|
||||||
|
'mysql.connector.locales.eng', 'mysql.connector.locales.eng.client_error',
|
||||||
|
'mysql.connector.plugins', 'mysql.connector.plugins.mysql_native_password',
|
||||||
|
'mysql.connector.plugins.caching_sha2_password',
|
||||||
|
'mysql.connector.aio', 'mysql.connector.aio.plugins',
|
||||||
|
'mysql.connector.aio.plugins.mysql_native_password',
|
||||||
|
'kivy.core.window.window_sdl2', 'win32timezone',
|
||||||
|
],
|
||||||
hookspath=[],
|
hookspath=[],
|
||||||
hooksconfig={},
|
hooksconfig={},
|
||||||
runtime_hooks=[],
|
runtime_hooks=[],
|
||||||
|
|||||||
BIN
dist/DatabaseApp.exe
vendored
BIN
dist/DatabaseApp.exe
vendored
Binary file not shown.
Reference in New Issue
Block a user