走啊走
加油

window server部署JAVA项目?

服务器价格表

在 Windows Server 上部署 Java 项目是完全可行的,虽然 Linux 更常见,但 Windows Server 同样可以稳定运行 Java 应用。以下是详细的部署步骤和建议:


一、准备工作

  1. 确认服务器环境

    • 操作系统:Windows Server(如 2016、2019、2022)
    • 权限:具有管理员权限
    • 网络:确保端口开放(如 8080、443 等)
  2. 安装 Java 运行环境(JRE/JDK)

    • 下载 JDK(推荐使用 Oracle JDK 或 OpenJDK)
      • 官网下载:https://adoptium.net(推荐 Temurin OpenJDK)
    • 安装 JDK(例如安装到 C:Program FilesJavajdk-17
    • 配置环境变量:
      JAVA_HOME = C:Program FilesJavajdk-17
      Path += %JAVA_HOME%bin
    • 验证安装:
      java -version
      javac -version

二、获取 Java 项目文件

通常 Java 项目打包为以下格式之一:

  • JAR 文件(Spring Boot 常见)
  • WAR 文件(需配合 Tomcat 等容器)
  • 源码编译后部署

示例:Spring Boot 打包成 JAR

mvn clean package

生成 target/myapp.jar

将 JAR 文件上传到服务器(可用 FTP、SCP、远程桌面复制等方式)。


三、部署方式选择

方式一:直接运行 JAR(适用于 Spring Boot)

  1. 将 JAR 文件放到服务器目录,如 D:javaappsmyapp.jar
  2. 使用命令运行:
    java -jar myapp.jar
  3. 如需后台运行,可使用:
    start /B java -jar myapp.jar > app.log 2>&1
  4. 或使用 PowerShell 后台运行:
    Start-Process java -ArgumentList "-jar","myapp.jar" -RedirectStandardOutput "output.log" -NoNewWindow

⚠️ 注意:关闭 CMD 窗口会终止进程,建议使用服务方式长期运行。


方式二:注册为 Windows 服务(推荐长期运行)

使用工具将 JAR 包注册为 Windows 服务,开机自启、后台运行。

推荐工具:

  • NSSM (Non-Sucking Service Manager)(最简单)
  • WinSW (Windows Service Wrapper)
使用 NSSM 示例:
  1. 下载 NSSM:https://nssm.cc/download
  2. 解压后运行 nssm install MyJavaApp
  3. 配置:
    • Path: C:Program FilesJavajdk-17binjava.exe
    • Arguments: -jar D:javaappsmyapp.jar
    • Startup directory: D:javaapps
  4. 点击 “Install service”
  5. 启动服务:
    net start MyJavaApp

方式三:使用 Tomcat 部署 WAR 项目

  1. 下载 Apache Tomcat(如 9.x 或 10.x):https://tomcat.apache.org
  2. 解压到 C:tomcat
  3. 将 WAR 文件放入 webapps 目录
  4. 启动 Tomcat:
    C:tomcatbinstartup.bat
  5. 访问:http://your-server-ip:8080/your-app-name

可将 Tomcat 安装为服务(使用 service.bat install


四、配置防火墙与端口

确保服务器防火墙允许应用端口(如 8080):

  1. 打开“高级安全 Windows 防火墙”
  2. 添加入站规则 → 端口 → TCP → 特定本地端口(如 8080)
  3. 允许连接

或使用命令:

netsh advfirewall firewall add rule name="Java App Port 8080" dir=in action=allow protocol=TCP localport=8080

五、域名与反向X_X(可选)

如果需要通过域名访问,可搭配 IIS + ARR(Application Request Routing)做反向X_X:

  1. 安装 IIS 和 ARR 模块
  2. 配置网站绑定域名
  3. 设置 ARR 规则,将请求转发到 localhost:8080

六、日志监控与维护

  • 查看日志文件(应用日志、Windows 事件日志)
  • 使用任务管理器或 jps 命令查看 Java 进程
  • 定期备份和更新

七、安全建议

  • 不要使用默认端口暴露管理接口
  • 更新 JDK 补丁
  • 使用强密码保护服务器
  • 限制远程桌面访问 IP

总结

需求 推荐方案
Spring Boot JAR NSSM 注册为服务
传统 Web 项目(WAR) Tomcat 部署
高可用、反向X_X IIS + ARR + Tomcat/JAR
自动启动、后台运行 必须使用服务方式

如有具体项目类型(如 Spring Boot、普通 Java Web、微服务等),可提供更详细部署脚本或配置。

是否需要我为你生成一个自动部署脚本(BAT 或 PowerShell)?