在 Windows Server 上部署和运行 Java 项目是一个常见需求,适用于企业级应用、Web 服务等场景。以下是详细的步骤指南,帮助你在 Windows Server 上成功部署并运行 Java 项目。
✅ 一、准备工作
1. 确认系统环境
- 操作系统:Windows Server(如 2016、2019、2022)
- 用户权限:建议使用管理员账户操作
- 防火墙/安全组:确保端口开放(如 8080)
✅ 二、安装 Java 运行环境(JRE 或 JDK)
Java 项目需要 Java 虚拟机(JVM)支持。
方法一:下载并安装 JDK
- 访问 Oracle 官网 或 Adoptium(推荐开源免费):
- https://adoptium.net(原 AdoptOpenJDK)
- 下载适合 Windows 的 x64 MSI 安装包(如 OpenJDK 17 或 11)
- 双击安装,按向导完成安装(默认路径通常为
C:Program FilesEclipse Adoptiumjdk-xx.x.x)
方法二:绿色版解压使用(可选)
- 下载 ZIP 包,解压到指定目录(如
C:javajdk-17)
验证安装
打开命令提示符(CMD)或 PowerShell,输入:
java -version
javac -version # 如果安装了 JDK
输出类似:
openjdk version "17.0.9" 2023-10-17
OpenJDK Runtime Environment (build 17.0.9+9)
OpenJDK 64-Bit Server VM (build 17.0.9+9, mixed mode)
⚠️ 若提示“不是内部或外部命令”,需配置环境变量。
✅ 三、配置环境变量(重要)
右键“此电脑” → “属性” → “高级系统设置” → “环境变量”
添加以下内容:
| 变量名 | 值 |
|---|---|
JAVA_HOME |
C:Program FilesEclipse Adoptiumjdk-17.0.9.9-hotspot(根据实际路径修改) |
PATH |
添加 %JAVA_HOME%bin |
保存后重启 CMD 再测试
java -version
✅ 四、准备 Java 项目
常见类型:
- Spring Boot 打包的 JAR 文件(最常见)
- WAR 文件(需配合 Tomcat 等容器)
- 自定义脚本启动的 Java 应用
示例:Spring Boot 项目生成的 myapp.jar
✅ 五、运行 Java 项目
方式1:直接运行 JAR 文件
java -jar myapp.jar
如果需要后台运行,可以加参数:
java -jar myapp.jar --spring.profiles.active=prod
默认日志输出到控制台,关闭窗口即停止程序。
方式2:后台运行(推荐使用工具)
推荐工具:NSSM(Non-Sucking Service Manager)
将 Java 程序注册为 Windows 服务,开机自启、崩溃自动重启。
步骤:
- 下载 NSSM:https://nssm.cc/download
- 解压后运行
nssm install MyJavaApp - 在弹出界面中填写:
- Path:
C:pathtoyourjdkbinjava.exe - Arguments:
-jar "C:pathtomyapp.jar" - Startup directory:
C:pathtoyourappfolder
- Path:
- 点击 “Install service”
- 使用“服务”管理器启动
MyJavaApp
✅ 优势:开机自启、崩溃自动恢复、可通过 services.msc 管理
方式3:使用批处理脚本(.bat)
创建 start.bat:
@echo off
cd /d D:myapp
java -jar myapp.jar > output.log 2>&1
pause
双击运行即可。但不推荐用于生产。
✅ 六、配置防火墙与访问
确保服务器防火墙允许访问你的应用端口(如 8080):
- 打开“高级安全 Windows 防火墙”
- 添加入站规则 → 端口 → TCP → 特定本地端口:
8080 - 允许连接
然后可通过浏览器访问:
http://<服务器IP>:8080
✅ 七、日志与监控
- 查看日志文件(Spring Boot 默认输出到控制台,可重定向到文件)
- 使用
logging.file.name=app.log配置写入日志文件 - 可结合 Logrotate 工具或第三方 APM(如 Prometheus + Grafana)
✅ 八、可选:使用 Tomcat 部署 WAR(传统方式)
如果你的项目是 WAR 包:
- 下载 Apache Tomcat for Windows(https://tomcat.apache.org)
- 解压到目录(如
C:tomcat) - 将 WAR 文件放入
webapps目录 - 运行
binstartup.bat - 访问
http://localhost:8080/your-app-name
也可将 Tomcat 注册为服务。
✅ 九、常见问题排查
| 问题 | 解决方案 |
|---|---|
java is not recognized |
检查 JAVA_HOME 和 PATH |
| 端口被占用 | 使用 netstat -ano | findstr :8080 查杀进程 |
| 中文乱码 | 启动时加 -Dfile.encoding=UTF-8 |
| 内存不足 | 加 -Xms512m -Xmx2g 参数 |
| 无法网络访问 | 检查防火墙、云服务器安全组 |
✅ 十、总结流程图
安装JDK → 配置环境变量 → 准备JAR/WAR →
→ 运行java -jar 或 使用NSSM注册服务 → 开放防火墙 → 测试访问
如果你提供具体的项目类型(如 Spring Boot、普通 Java、WAR 包等),我可以给出更精确的部署脚本或配置建议。
是否需要我为你生成一个 NSSM 注册服务的详细图文教程 或 自动启动脚本模板?欢迎继续提问!
CLOUD云计算