| 
									
										
										
										
											2025-09-11 18:27:56 +08:00
										 |  |  |  | @echo off | 
					
						
							|  |  |  |  | chcp 65001 > nul | 
					
						
							|  |  |  |  | setlocal enabledelayedexpansion | 
					
						
							|  |  |  |  | set "CURRENT_DIR=%~dp0" | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | :: 核心配置 | 
					
						
							|  |  |  |  | set "TARGET_JARS=yjearth.jar geographysdk.jar" | 
					
						
							|  |  |  |  | set "JPS_EXE=%CURRENT_DIR%jdk\bin\jps.exe" | 
					
						
							|  |  |  |  | set "TEMP_FILE=%temp%\jps_output.txt" | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | :: 检查jps可用性 | 
					
						
							|  |  |  |  | if not exist "!JPS_EXE!" ( | 
					
						
							|  |  |  |  |     echo 错误:未找到jps.exe(!JPS_EXE!) | 
					
						
							|  |  |  |  |     endlocal && pause && exit /b 1 | 
					
						
							|  |  |  |  | ) | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | :: 获取Java进程列表 | 
					
						
							|  |  |  |  | "!JPS_EXE!" -l > "!TEMP_FILE!" 2>nul | 
					
						
							|  |  |  |  | echo 正在查找运行中的进程... | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | :: 循环停止目标JAR | 
					
						
							|  |  |  |  | for %%J in (!TARGET_JARS!) do ( | 
					
						
							|  |  |  |  |     set "PID=" | 
					
						
							|  |  |  |  |     echo. && echo 查找 %%J 进程... | 
					
						
							|  |  |  |  |     :: 匹配进程ID | 
					
						
							|  |  |  |  |     for /f "tokens=1,2" %%a in ('type "!TEMP_FILE!"') do ( | 
					
						
							|  |  |  |  |         echo "%%b" | findstr /i "%%J" >nul && set "PID=%%a" | 
					
						
							|  |  |  |  |     ) | 
					
						
							|  |  |  |  |     :: 终止逻辑 | 
					
						
							|  |  |  |  |     if defined PID ( | 
					
						
							|  |  |  |  |         taskkill /pid !PID! /f > nul 2>&1 | 
					
						
							|  |  |  |  |         if !errorlevel! equ 0 (echo 成功终止 %%J(PID:!PID!)) else (echo 终止 %%J(PID:!PID!)失败) | 
					
						
							|  |  |  |  |     ) else (echo 未找到运行中的 %%J 进程) | 
					
						
							|  |  |  |  | ) | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | :: 清理临时文件 | 
					
						
							|  |  |  |  | del "!TEMP_FILE!" >nul 2>&1 | 
					
						
							|  |  |  |  | echo. && echo 操作完成 | 
					
						
							| 
									
										
										
										
											2025-10-17 10:28:26 +08:00
										 |  |  |  | endlocal |