仓库初始化
This commit is contained in:
@@ -0,0 +1,116 @@
|
||||
@echo off
|
||||
chcp 65001 >nul
|
||||
title Server Manager - 打包便携版
|
||||
for %%I in ("%~dp0..\..") do set "ROOT=%%~fI"
|
||||
set "SRC=%ROOT%\src"
|
||||
pushd "%SRC%" || (
|
||||
echo [错误] 未找到 src 目录: %SRC%
|
||||
exit /b 1
|
||||
)
|
||||
|
||||
echo ============================================================
|
||||
echo Server Manager - 打包便携版 EXE
|
||||
echo ============================================================
|
||||
echo.
|
||||
|
||||
:: 检查 Python 是否安装
|
||||
python --version >nul 2>&1
|
||||
if errorlevel 1 (
|
||||
echo [错误] 未找到 Python,请先安装 Python 3.8+
|
||||
pause
|
||||
exit /b 1
|
||||
)
|
||||
|
||||
echo [1/5] 检查并安装依赖...
|
||||
pip install PyQt6 pyinstaller Pillow -q
|
||||
|
||||
if errorlevel 1 (
|
||||
echo [错误] 安装依赖失败
|
||||
pause
|
||||
exit /b 1
|
||||
)
|
||||
|
||||
echo [2/5] 生成图标文件...
|
||||
python "%ROOT%\resources\icon\convert_icon.py"
|
||||
if not exist "%ROOT%\resources\icon\icon.ico" (
|
||||
echo [警告] 无法生成 ICO 图标,将使用默认图标
|
||||
set "ICON_PARAM="
|
||||
) else (
|
||||
set "ICON_PARAM=--icon %ROOT%\resources\icon\icon.ico"
|
||||
)
|
||||
|
||||
echo [3/5] 清理旧的构建文件...
|
||||
if exist "dist" rd /s /q dist
|
||||
if exist "build" rd /s /q build
|
||||
if exist "main.spec" del /q "main.spec"
|
||||
|
||||
echo [4/5] 开始打包(单文件版本)...
|
||||
pyinstaller --noconfirm --onefile --windowed ^
|
||||
--name "main" ^
|
||||
%ICON_PARAM% ^
|
||||
--add-data "%ROOT%\resources\icon;icon" ^
|
||||
--hidden-import "PyQt6.QtWidgets" ^
|
||||
--hidden-import "PyQt6.QtCore" ^
|
||||
--hidden-import "PyQt6.QtGui" ^
|
||||
--hidden-import "entrypoints.cli.main" ^
|
||||
--hidden-import "entrypoints.cli.extended" ^
|
||||
--hidden-import "entrypoints.gui.bootstrap" ^
|
||||
--hidden-import "mcp.server" ^
|
||||
--hidden-import "mcp.tools" ^
|
||||
--hidden-import "models.app_config" ^
|
||||
--hidden-import "services.commands" ^
|
||||
--hidden-import "services.server_creator" ^
|
||||
--hidden-import "services.hot_update" ^
|
||||
--hidden-import "services.rg_search" ^
|
||||
--hidden-import "requests" ^
|
||||
--hidden-import "bsdiff4" ^
|
||||
--collect-all "PyQt6" ^
|
||||
--collect-all "bsdiff4" ^
|
||||
entrypoints\main.py
|
||||
|
||||
if errorlevel 1 (
|
||||
echo [错误] 打包失败,尝试使用目录模式...
|
||||
|
||||
pyinstaller --noconfirm --onedir --windowed ^
|
||||
--name "main" ^
|
||||
%ICON_PARAM% ^
|
||||
--add-data "%ROOT%\resources\icon;icon" ^
|
||||
--hidden-import "PyQt6.QtWidgets" ^
|
||||
--hidden-import "PyQt6.QtCore" ^
|
||||
--hidden-import "PyQt6.QtGui" ^
|
||||
--hidden-import "entrypoints.cli.main" ^
|
||||
--hidden-import "entrypoints.cli.extended" ^
|
||||
--hidden-import "entrypoints.gui.bootstrap" ^
|
||||
--hidden-import "mcp.server" ^
|
||||
--hidden-import "mcp.tools" ^
|
||||
--hidden-import "models.app_config" ^
|
||||
--hidden-import "services.commands" ^
|
||||
--hidden-import "services.server_creator" ^
|
||||
--hidden-import "services.hot_update" ^
|
||||
--hidden-import "services.rg_search" ^
|
||||
--hidden-import "requests" ^
|
||||
--hidden-import "bsdiff4" ^
|
||||
--collect-all "bsdiff4" ^
|
||||
entrypoints\main.py
|
||||
|
||||
if errorlevel 1 (
|
||||
echo [错误] 打包失败
|
||||
pause
|
||||
exit /b 1
|
||||
)
|
||||
)
|
||||
|
||||
echo [5/5] 打包完成!
|
||||
|
||||
echo.
|
||||
echo ============================================================
|
||||
if exist "dist\main.exe" (
|
||||
echo 打包成功!单文件版本: dist\main.exe
|
||||
) else if exist "dist\main\main.exe" (
|
||||
echo 打包成功!目录版本: dist\main\main.exe
|
||||
)
|
||||
echo ============================================================
|
||||
echo.
|
||||
|
||||
pause
|
||||
popd
|
||||
Reference in New Issue
Block a user