From 7cfe03832cbe172e7bd3f9dad73488bb10b2240e Mon Sep 17 00:00:00 2001 From: phamhungd Date: Tue, 25 Nov 2025 05:27:26 +0700 Subject: [PATCH] update run --- run_app.bat | 33 ++++++++++++++++++++++++++++++++- run_app.command | 28 +++++++++++++++++++++++----- run_app.sh | 19 ++++++++++++++----- 3 files changed, 69 insertions(+), 11 deletions(-) diff --git a/run_app.bat b/run_app.bat index 3125701..64ff3fe 100644 --- a/run_app.bat +++ b/run_app.bat @@ -18,17 +18,48 @@ for /f "delims=" %%P in ('py -3 -c "import sys; print(sys.executable)" 2^>nul') goto :found_python ) -echo No python interpreter found in PATH. +echo Error: Python not found. +echo Please install Python from https://www.python.org/downloads/ +echo or install it via the Microsoft Store. +echo IMPORTANT: When installing, make sure to check "Add Python to PATH". +pause exit /b 1 :found_python if not exist ".venv" ( + echo Creating virtual environment... "%PYTHON_BIN%" -m venv .venv + if errorlevel 1 ( + echo Error: Failed to create virtual environment. + pause + exit /b 1 + ) ) +echo Activating virtual environment... call .venv\Scripts\activate.bat +if errorlevel 1 ( + echo Error: Failed to activate virtual environment. + pause + exit /b 1 +) +echo Installing dependencies... pip install -r requirements.txt +if errorlevel 1 ( + echo Error: Failed to install dependencies. + pause + exit /b 1 +) +echo Starting application... call .venv\Scripts\python.exe app.py +if errorlevel 1 ( + echo Error: Application crashed or exited with an error. + pause + exit /b 1 +) + +echo Application finished successfully. +pause endlocal diff --git a/run_app.command b/run_app.command index f9776bb..8b7f012 100755 --- a/run_app.command +++ b/run_app.command @@ -3,19 +3,37 @@ cd "$(dirname "$0")" # Prefer python3 but fall back to python; allow overriding via env PYTHON_BIN="${PYTHON_BIN:-$(command -v python3 || command -v python)}" if [[ -z "$PYTHON_BIN" ]]; then - echo "No python interpreter found in PATH." + echo "Error: Python not found." + echo "Please install Python 3." + echo " - On macOS: brew install python3" + echo " - Or download from https://www.python.org/downloads/" + read -k 1 "key?Press any key to exit..." exit 1 fi +# Create a virtual environment if missing, then activate it # Create a virtual environment if missing, then activate it if [[ ! -d ".venv" ]]; then - "$PYTHON_BIN" -m venv .venv + echo "Creating virtual environment..." + "$PYTHON_BIN" -m venv .venv || { echo "Error: Failed to create virtual environment."; read -k 1 "key?Press any key to exit..."; exit 1; } fi -source .venv/bin/activate +echo "Activating virtual environment..." +source .venv/bin/activate || { echo "Error: Failed to activate virtual environment."; read -k 1 "key?Press any key to exit..."; exit 1; } # Ensure dependencies are available (skip reinstall if up-to-date) -pip install -r requirements.txt +echo "Installing dependencies..." +pip install -r requirements.txt || { echo "Error: Failed to install dependencies."; read -k 1 "key?Press any key to exit..."; exit 1; } # Start the Flask app on port 8888 -exec .venv/bin/python app.py +echo "Starting application..." +.venv/bin/python app.py + +if [[ $? -ne 0 ]]; then + echo "Error: Application crashed or exited with an error." + read -k 1 "key?Press any key to exit..." + exit 1 +fi + +echo "Application finished successfully." +read -k 1 "key?Press any key to exit..." diff --git a/run_app.sh b/run_app.sh index 3894f6c..2c607ed 100755 --- a/run_app.sh +++ b/run_app.sh @@ -6,19 +6,28 @@ cd "$(dirname "$0")" # Prefer python3 but fall back to python; allow override via environment PYTHON_BIN="${PYTHON_BIN:-$(command -v python3 || command -v python)}" if [[ -z "$PYTHON_BIN" ]]; then - echo "No python interpreter found in PATH." + echo "Error: Python not found." + echo "Please install Python 3." + echo " - On macOS: brew install python3" + echo " - On Linux: sudo apt install python3 (or equivalent for your distro)" + echo " - Or download from https://www.python.org/downloads/" exit 1 fi +# Create a virtual environment if missing, then activate it # Create a virtual environment if missing, then activate it if [[ ! -d ".venv" ]]; then - "$PYTHON_BIN" -m venv .venv + echo "Creating virtual environment..." + "$PYTHON_BIN" -m venv .venv || { echo "Error: Failed to create virtual environment."; exit 1; } fi -source .venv/bin/activate +echo "Activating virtual environment..." +source .venv/bin/activate || { echo "Error: Failed to activate virtual environment."; exit 1; } # Ensure dependencies are available -pip install -r requirements.txt +echo "Installing dependencies..." +pip install -r requirements.txt || { echo "Error: Failed to install dependencies."; exit 1; } # Start the Flask app on port 8888 -exec .venv/bin/python app.py +echo "Starting application..." +exec .venv/bin/python app.py || { echo "Error: Application exited with an error."; exit 1; }