98 lines
2.0 KiB
Batchfile
98 lines
2.0 KiB
Batchfile
@echo off
|
|
setlocal
|
|
|
|
cd /d "%~dp0"
|
|
|
|
echo ================================================
|
|
echo Build EXE - Sistem Klasifikasi Jurusan Siswa
|
|
echo ================================================
|
|
|
|
python --version >nul 2>&1
|
|
if errorlevel 1 (
|
|
echo [ERROR] Python tidak ditemukan di PATH.
|
|
pause
|
|
exit /b 1
|
|
)
|
|
|
|
python -m pip install --upgrade pip
|
|
if errorlevel 1 (
|
|
echo [ERROR] Gagal update pip.
|
|
pause
|
|
exit /b 1
|
|
)
|
|
|
|
python -m pip install -r requirements.txt
|
|
if errorlevel 1 (
|
|
echo [ERROR] Gagal install dependency dari requirements.txt.
|
|
pause
|
|
exit /b 1
|
|
)
|
|
|
|
python -m pip install pyinstaller
|
|
if errorlevel 1 (
|
|
echo [ERROR] Gagal install pyinstaller.
|
|
pause
|
|
exit /b 1
|
|
)
|
|
|
|
echo Menutup proses jurusify.exe jika masih berjalan...
|
|
taskkill /F /IM jurusify.exe >nul 2>&1
|
|
|
|
echo Menyiapkan ikon logo_sekolah.ico...
|
|
python convert_logo.py
|
|
|
|
if not exist "img\logo_sekolah.png" (
|
|
echo [ERROR] Ikon wajib tidak ditemukan: img\logo_sekolah.png
|
|
echo [ERROR] Build dibatalkan agar EXE tidak memakai ikon default.
|
|
pause
|
|
exit /b 1
|
|
)
|
|
|
|
if exist build (
|
|
rmdir /s /q build
|
|
if exist build (
|
|
echo [ERROR] Folder build tidak bisa dihapus. Tutup aplikasi/Explorer yang sedang membuka file build lalu coba lagi.
|
|
pause
|
|
exit /b 1
|
|
)
|
|
)
|
|
|
|
if exist dist (
|
|
rmdir /s /q dist
|
|
if exist dist (
|
|
echo [ERROR] Folder dist tidak bisa dihapus. Pastikan jurusify.exe sudah ditutup lalu coba lagi.
|
|
pause
|
|
exit /b 1
|
|
)
|
|
)
|
|
|
|
if exist "SistemKlasifikasiJurusan.spec" del /q "SistemKlasifikasiJurusan.spec"
|
|
if exist "jurusify.spec" del /q "jurusify.spec"
|
|
|
|
pyinstaller ^
|
|
--noconfirm ^
|
|
--clean ^
|
|
--windowed ^
|
|
--name "jurusify" ^
|
|
--icon "%CD%\img\logo_sekolah.png" ^
|
|
--add-data "data;data" ^
|
|
--add-data "models;models" ^
|
|
--add-data "img;img" ^
|
|
main.py
|
|
|
|
if errorlevel 1 (
|
|
echo [ERROR] Build gagal.
|
|
pause
|
|
exit /b 1
|
|
)
|
|
|
|
echo.
|
|
echo [OK] Build selesai.
|
|
echo Hasil ada di: dist\jurusify\
|
|
echo Jalankan: dist\jurusify\jurusify.exe
|
|
echo.
|
|
echo [PENTING] Jangan jalankan file EXE dari folder build\
|
|
echo [PENTING] Jalankan EXE hanya dari folder dist\jurusify\
|
|
echo.
|
|
pause
|