在 Windows 环境部署 Java 应用时,合理的启动脚本能大幅简化运维工作。本文整理了标准 BAT 脚本、静默启动 VBS 脚本、集成 Nacos 配置的启动方案,以及常见编码问题的解决方法。
1. 基础启动脚本配置
1.1 标准批处理脚本 (.bat)
创建 start-app.bat:
@echo off
title Java Application
:: ================= 配置区域 =================
:: 设置 Java 路径 (可选)
:: set JAVA_HOME=C:\Program Files\Java\jdk1.8.0_xxx
:: set PATH=%JAVA_HOME%\bin;%PATH%
:: 设置 Jar 包名称 (请修改这里)
set JAR_NAME=your-application.jar
:: 设置JVM参数
set JAVA_OPTS=-Xms512m -Xmx1024m -Dfile.encoding=UTF-8
:: 设置应用参数
set APP_ARGS=--spring.profiles.active=dev
:: ===========================================
echo [INFO] 正在启动服务...
echo [INFO] JAR包: %JAR_NAME%
java %JAVA_OPTS% -jar %JAR_NAME% %APP_ARGS%
echo [INFO] 服务已启动
pause
1.2 静默启动脚本 (.vbs)
创建 run-app.vbs,完全后台运行无窗口:
Set ws = CreateObject("Wscript.Shell")
' 1. 填写 jar 包完整路径
jarPath = "C:\path\to\your\your-application.jar"
' 2. 配置JVM参数
javaOpts = "-Xms512m -Xmx1024m -Dfile.encoding=UTF-8"
' 3. 配置应用参数
appArgs = "--spring.profiles.active=dev"
' 构建并运行命令 (0 表示隐藏窗口)
command = "javaw " & javaOpts & " -jar """ & jarPath & """ " & appArgs
ws.Run command, 0
2. 集成 Nacos 配置的启动脚本
创建 start-with-nacos.bat:
@echo off
title Nacos Application
:: ================= 配置区域 =================
set NACOS_SERVER=172.135.26.21:8848
set NACOS_NAMESPACE=newpowerplant-content
set JAR_NAME=your-application.jar
set JAVA_OPTS=-Xms512m -Xmx1024m -Dfile.encoding=UTF-8
:: ===========================================
echo [INFO] 正在启动服务...
echo [INFO] Nacos地址: %NACOS_SERVER%
echo [INFO] 命名空间: %NACOS_NAMESPACE%
java %JAVA_OPTS% -jar ^
-Dspring.cloud.nacos.discovery.server-addr=%NACOS_SERVER% ^
-Dspring.cloud.nacos.config.server-addr=%NACOS_SERVER% ^
-Dspring.cloud.nacos.discovery.namespace=%NACOS_NAMESPACE% ^
-Dspring.cloud.nacos.config.namespace=%NACOS_NAMESPACE% ^
%JAR_NAME%
echo [INFO] 服务启动完成
pause
关键参数说明:
| 参数 | 说明 |
|---|---|
spring.cloud.nacos.discovery.server-addr |
服务发现地址 |
spring.cloud.nacos.config.server-addr |
配置中心地址 |
spring.cloud.nacos.discovery.namespace |
服务发现命名空间 |
spring.cloud.nacos.config.namespace |
配置中心命名空间 |
3. 常见问题
3.1 编码问题(Nacos配置乱码)
现象: Nacos 配置解析错误,出现乱码。
原因: Windows 默认编码为 GBK,而 Nacos 配置通常为 UTF-8。
解决: 启动参数中强制指定编码:
set JAVA_OPTS=-Xms512m -Xmx1024m -Dfile.encoding=UTF-8
3.2 后台运行
:: 使用 start 命令后台运行
start javaw %JAVA_OPTS% -jar %JAR_NAME%
或直接使用上文的 .vbs 脚本静默运行。
4. 运行方式
| 方式 | 操作 | 特点 |
|---|---|---|
| 命令行运行 | 进入目录执行 start-app.bat |
可见日志输出 |
| 双击运行 | 直接双击 .bat 文件 |
弹出命令窗口 |
| 静默运行 | 双击 .vbs 脚本 |
完全后台,无窗口 |
5. 附录
环境检查命令
:: 检查Java版本
java -version
:: 检查网络连通性
ping 172.135.26.21
:: 检查端口可用性
telnet 172.135.26.21 8848
常用调试参数
:: 显示详细日志
java -Dlogging.level.root=DEBUG -jar your-application.jar
:: 开启远程调试
java -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005 -jar your-application.jar
评论交流
欢迎留下你的想法