@echo off setlocal enabledelayedexpansion rem ============================================================ rem Hugray ±¾µØÒ»¼üÆô¶¯£ºNacos -> Redis -> 8 ¸ö΢·þÎñ rem ÒÑÕ¼ÓõĶ˿ڻáÌø¹ý£¬¿ÉÖØ¸´Ö´ÐУ¨Ãݵȣ© rem ============================================================ rem ---------------------- ÅäÖÃÇø ---------------------- set "JAVA_HOME=D:\jdk-17.0.9" set "NACOS_HOME=F:\nacos-3.0.2\nacos" set "REDIS_HOME=C:\Users\Admin\Desktop\redis" rem ---------------------------------------------------- set "SERVER_DIR=%~dp0.." set "LOG_DIR=%SERVER_DIR%\logs" set "JAVA=%JAVA_HOME%\bin\java.exe" if not exist "%JAVA%" ( echo [´íÎó] δÕÒµ½ JDK£º%JAVA% echo ÇëÐ޸ı¾½Å±¾¡¸ÅäÖÃÇø¡¹ÖÐµÄ JAVA_HOME pause exit /b 1 ) cd /d "%SERVER_DIR%" if not exist "%LOG_DIR%" md "%LOG_DIR%" echo. echo ============ Hugray ±¾µØ¿ª·¢»·¾³Æô¶¯ ============ echo JDK : %JAVA_HOME% echo ÈÕÖ¾ : %LOG_DIR% echo ================================================ echo. rem ---------- 1. Nacos ---------- call :port_in_use 8848 if not errorlevel 1 ( echo [Ìø¹ý] Nacos ÒÑÔÚÔËÐÐ ) else ( if not exist "%NACOS_HOME%\bin\startup.cmd" ( echo [´íÎó] δÕÒµ½ Nacos£º%NACOS_HOME%\bin\startup.cmd pause exit /b 1 ) echo [Æô¶¯] Nacos -^> %NACOS_HOME% rem ²»ÒªÓà start + startup.cmd£ºstart »áÈÃ×Ó½ø³Ì¼Ì³Ð±¾½Å±¾±»Öض¨ÏòµÄ stdin£¨³£Îª nul£©£¬ rem startup.cmd ĩβµÄ pause Òò¶øÁ¢¼´·µ»Ø¡¢¿ØÖÆÌ¨ËæÖ®¹Ø±Õ£¬Nacos »á±»Á¬´øÉ±µô¡£ rem ¸ÄÓà Start-Process£¬×Ó½ø³ÌÄõ½¶ÀÁ¢¿ØÖÆÌ¨£¬Nacos ÉúÃüÖÜÆÚÓë±¾½Å±¾½âñî¡£ powershell -NoProfile -Command "Start-Process -FilePath '%NACOS_HOME%\bin\startup.cmd' -ArgumentList '-m','standalone' -WindowStyle Hidden" ) echo [µÈ´ý] Nacos 8848 ¾ÍÐ÷ ... call :wait_port 8848 120 if errorlevel 1 ( echo [´íÎó] Nacos 120 ÃëÄÚδ¾ÍÐ÷£¬Çë²é¿´ %NACOS_HOME%\logs pause exit /b 1 ) echo [¾ÍÐ÷] Nacos rem ---------- 2. Redis ---------- call :port_in_use 6379 if not errorlevel 1 ( echo [Ìø¹ý] Redis ÒÑÔÚÔËÐÐ ) else ( if not exist "%REDIS_HOME%\redis-server.exe" ( echo [¾¯¸æ] δÕÒµ½ Redis£º%REDIS_HOME%\redis-server.exe£¬Ìø¹ý ) else ( echo [Æô¶¯] Redis -^> %REDIS_HOME% powershell -NoProfile -Command "Start-Process -FilePath '%REDIS_HOME%\redis-server.exe' -ArgumentList '%REDIS_HOME%\redis.windows.conf' -WorkingDirectory '%REDIS_HOME%' -WindowStyle Hidden" call :wait_port 6379 20 if errorlevel 1 echo [¾¯¸æ] Redis Æô¶¯½ÏÂý£¬ÇëÉÔºóÈ·ÈÏ ) ) rem ---------- 3. ΢·þÎñ£¨gateway ·Å×îºó£¬µÈËüÆðÀ´¼´¿ÉÅж¨ÕûÌå¾ÍÐ÷£© ---------- echo. echo ---------- Æô¶¯Î¢·þÎñ ---------- call :start_service "ruoyi-auth" "ruoyi-auth" "ruoyi-auth.jar" 9200 call :start_service "ruoyi-system" "ruoyi-modules\ruoyi-system" "ruoyi-modules-system.jar" 9201 call :start_service "ruoyi-gen" "ruoyi-modules\ruoyi-gen" "ruoyi-modules-gen.jar" 9202 call :start_service "ruoyi-job" "ruoyi-modules\ruoyi-job" "ruoyi-modules-job.jar" 9203 call :start_service "ruoyi-file" "ruoyi-modules\ruoyi-file" "ruoyi-modules-file.jar" 9300 call :start_service "ruoyi-user" "ruoyi-modules\ruoyi-user" "ruoyi-modules-user.jar" 9210 call :start_service "ruoyi-monitor" "ruoyi-visual\ruoyi-monitor" "ruoyi-visual-monitor.jar" 9100 call :start_service "ruoyi-gateway" "ruoyi-gateway" "ruoyi-gateway.jar" 8085 echo. echo ---------- µÈ´ýÍø¹Ø¾ÍÐ÷ ---------- call :wait_port 8085 120 if errorlevel 1 ( echo [¾¯¸æ] Íø¹Ø 8085 δÔÚ 120 ÃëÄÚ¾ÍÐ÷£¬Çë²é¿´ %LOG_DIR%\ruoyi-gateway.err.log ) else ( echo [¾ÍÐ÷] Íø¹Ø http://localhost:8085 ) echo. echo ============ Æô¶¯Íê³É ============ echo Nacos ¿ØÖÆÌ¨ : http://localhost:8082 echo Íø¹Ø : http://localhost:8085 echo ¹ÜÀíºǫ́ : ¼û hugray-admin Ŀ¼£¨npm run dev£© echo ֹͣȫ²¿ : bin\stop-all.bat echo ================================ echo. pause exit /b 0 rem ============================================================ rem ×Ó¹ý³Ì rem ============================================================ rem :port_in_use <¶Ë¿Ú> -- errorlevel 0 ±íʾ¶Ë¿ÚÒѱ»¼àÌý :port_in_use netstat -an | findstr /C:":%~1 " | findstr /C:"LISTENING" >nul 2>&1 exit /b %errorlevel% rem :wait_port <¶Ë¿Ú> <³¬Ê±ÃëÊý> -- errorlevel 0 ±íʾÒѾÍÐ÷ :wait_port set /a _waited=0 :wait_port_loop call :port_in_use %~1 if not errorlevel 1 exit /b 0 set /a _waited+=1 if !_waited! GEQ %~2 exit /b 1 rem ÑÓʱÓà ping£ºtimeout ÔÚ stdin ±»Öض¨Ïòʱ»áÖ±½ÓÍ˳ö£¬¿¿²»×¡£» rem ¼Ó¾ø¶Ô·¾¶ÊÇΪÁ˱ÜÃâ Git Bash µÈ»·¾³°ÑͬÃû¹¤¾ß»ì½ø PATH "%SystemRoot%\System32\ping.exe" -n 2 -w 1000 127.0.0.1 >nul goto :wait_port_loop rem :start_service <Ãû³Æ> <Ä£¿éÏà¶ÔĿ¼> <¶Ë¿Ú> :start_service call :port_in_use %~4 if not errorlevel 1 ( echo [Ìø¹ý] %~1 - ¶Ë¿Ú %~4 Òѱ»Õ¼Óà exit /b 0 ) set "_dir=%SERVER_DIR%\%~2\target" set "_jar=%_dir%\%~3" if not exist "%_jar%" ( echo [´íÎó] %~1 - δÕÒµ½ %_jar% echo ÇëÏÈÖ´ÐÐ bin\package.bat ¹¹½¨ exit /b 1 ) echo [Æô¶¯] %~1 - ¶Ë¿Ú %~4 powershell -NoProfile -Command "Start-Process -FilePath '%JAVA%' -ArgumentList '-Dfile.encoding=UTF-8','-Xms512m','-Xmx1024m','-XX:MetaspaceSize=128m','-XX:MaxMetaspaceSize=512m','-jar','%_jar%' -WorkingDirectory '%_dir%' -RedirectStandardOutput '%LOG_DIR%\%~1.out.log' -RedirectStandardError '%LOG_DIR%\%~1.err.log' -WindowStyle Hidden" exit /b 0