在 Windows Server 上部署 Java 程序是一个常见需求,尤其适用于运行基于 Java 的 Web 应用(如 Spring Boot、Tomcat 部署的 WAR 包等)或后台服务程序。以下是详细的部署步骤和建议:
一、准备工作
1. 安装 Java 运行环境(JRE 或 JDK)
Java 程序需要 Java 虚拟机(JVM)来运行。
-
下载 JDK 或 JRE
- 推荐使用 Oracle JDK、OpenJDK(如 Adoptium / Eclipse Temurin)
- 下载地址:
- https://adoptium.net/(推荐,免费开源)
- https://www.oracle.com/java/technologies/downloads/
-
安装 JDK
- 运行安装包(
.exe),按提示完成安装。 - 记住安装路径,例如:
C:Program FilesJavajdk-17
- 运行安装包(
-
配置环境变量
- 打开“系统属性” → “高级系统设置” → “环境变量”
- 添加系统变量:
JAVA_HOME:C:Program FilesJavajdk-17PATH: 添加%JAVA_HOME%bin
- 验证安装:
java -version javac -version # 如果安装了 JDK
二、准备 Java 程序
根据你的程序类型选择部署方式:
情况1:可执行 JAR 文件(如 Spring Boot)
- 假设你有一个
myapp.jar - 放置到服务器目录,例如:
D:javaappsmyapp.jar
情况2:WAR 文件 + Tomcat
- 下载并安装 Apache Tomcat
- 地址:https://tomcat.apache.org/
- 解压到
C:tomcat
- 将
myapp.war放入C:tomcatwebapps - 启动 Tomcat 即可自动部署
三、运行 Java 程序
方法1:命令行直接运行(测试用)
cd D:javaapps
java -jar myapp.jar
缺点:关闭命令窗口即停止程序。
方法2:作为 Windows 服务运行(推荐生产环境)
让 Java 程序在后台持续运行,并支持开机自启。
使用 NSSM(Non-Sucking Service Manager)工具
-
下载 NSSM
- 官网:https://nssm.cc/download
- 下载后解压,例如放到
C:nssm
-
安装服务
- 打开命令提示符(管理员权限)
C:nssmwin64nssm.exe install MyJavaApp - 弹出配置窗口:
- Path:
C:Program FilesJavajdk-17binjava.exe - Arguments:
-jar D:javaappsmyapp.jar - Startup directory:
D:javaapps
- Path:
- 点击 "Install service"
- 打开命令提示符(管理员权限)
-
启动服务
net start MyJavaApp或通过“服务”管理器启动。
-
设置开机自启
- 默认已设置为自动启动,可在“服务”中查看。
方法3:使用 PowerShell 创建服务(高级)
也可以用 PowerShell 脚本配合 New-Service 命令,但 NSSM 更简单可靠。
四、配置防火墙与端口访问
如果程序监听 HTTP 端口(如 8080),需开放防火墙:
- 打开“Windows Defender 防火墙” → “高级设置”
- 添加入站规则,允许 TCP 端口(如 8080)
- 或使用命令:
netsh advfirewall firewall add rule name="Java App Port 8080" dir=in action=allow protocol=TCP localport=8080
五、日志与监控
- 将输出重定向到日志文件:
java -jar myapp.jar > app.log 2>&1 - 在 NSSM 中可以设置日志输出路径(I/O 选项卡)
六、其他建议
| 项目 | 建议 |
|---|---|
| JVM 参数 | 加上内存限制,如:-Xms512m -Xmx2g |
| 自动重启 | NSSM 可设置崩溃后自动重启 |
| 版本管理 | 使用脚本自动化部署(PowerShell 或批处理) |
| 安全性 | 以非管理员账户运行服务,避免使用 SYSTEM |
示例:完整 NSSM 配置参数
- Application:
- Path:
C:Program FilesJavajdk-17binjava.exe - Arguments:
-Xms512m -Xmx2g -jar D:javaappsmyapp.jar - Startup directory:
D:javaapps
- Path:
七、验证部署
浏览器访问:
http://your-server-ip:8080
确保程序正常响应。
✅ 总结:
在 Windows Server 部署 Java 程序的关键是:
- 正确安装 Java
- 使用 NSSM 将 jar 包注册为 Windows 服务
- 开放防火墙端口
- 配置日志和自动恢复机制
如有具体程序类型(Spring Boot、WebLogic、Tomcat 等),可进一步提供优化建议。
需要我帮你写一个自动部署脚本吗?
秒懂云