Java用Windows server怎么部署?

服务器

在 Windows Server 上部署 Java 应用程序(如 Spring Boot、Java Web 应用等)是一个常见的需求。以下是详细的部署步骤,适用于大多数 Java 应用场景。


一、准备工作

1. 安装 Java 运行环境(JRE 或 JDK)

Java 应用需要 Java 运行环境(JRE)或 JDK。

步骤:

  1. 下载 JDK(推荐使用 OpenJDKOracle JDK):

    • OpenJDK:https://adoptium.net/
    • Oracle JDK:https://www.oracle.com/java/technologies/downloads/
  2. 安装 JDK(例如安装到 C:Program FilesJavajdk-17

  3. 配置环境变量:

    • JAVA_HOMEC:Program FilesJavajdk-17
    • Path:添加 %JAVA_HOME%bin
  4. 验证安装:

    java -version
    javac -version

2. 准备你的 Java 应用

通常 Java 应用打包为:

  • .jar 文件(如 Spring Boot 项目)
  • .war 文件(部署到 Tomcat 等容器)

示例:Spring Boot 项目打包

mvn clean package

生成 target/myapp-0.0.1.jar


二、部署方式(根据应用类型选择)

方式一:直接运行 JAR 文件(推荐 Spring Boot)

1. 上传 JAR 文件

.jar 文件上传到服务器(如通过 FTP、远程桌面复制等),例如放到 D:appsmyapp.jar

2. 启动应用

打开命令提示符(CMD)或 PowerShell:

java -jar D:appsmyapp.jar

3. 后台运行(避免关闭窗口时停止)

使用 nohup 类似方式(Windows 不支持 nohup,可用以下方法):

方法 1:使用 start /B
start /B java -jar D:appsmyapp.jar > D:logsapp.log 2>&1
方法 2:使用 PowerShell 后台运行
Start-Process java -ArgumentList "-jar", "D:appsmyapp.jar" -RedirectStandardOutput "D:logsoutput.log" -RedirectStandardError "D:logserror.log" -NoNewWindow
方法 3:使用 Windows 服务(推荐长期运行)

推荐工具:NSSM (Non-Sucking Service Manager)

  1. 下载 NSSM:https://nssm.cc/download
  2. 解压后运行 nssm install MyJavaApp
  3. 配置:
    • Path: C:Program FilesJavajdk-17binjava.exe
    • Arguments: -jar D:appsmyapp.jar
    • Startup directory: D:apps
  4. 点击 Install service
  5. 使用服务管理器启动 MyJavaApp 服务

这样应用就能随系统启动,且在后台稳定运行。


方式二:部署 WAR 到 Tomcat

1. 安装 Apache Tomcat

  • 下载 Tomcat:https://tomcat.apache.org/
  • 解压到 D:tomcat

2. 配置环境变量(可选)

  • CATALINA_HOME = D:tomcat

3. 部署 WAR

将你的 .war 文件复制到:

D:tomcatwebappsROOT.war   # 覆盖默认首页
或
D:tomcatwebappsmyapp.war

4. 启动 Tomcat

进入 D:tomcatbin,双击 startup.bat 或运行:

D:tomcatbincatalina.bat start

5. 设置为 Windows 服务(推荐)

使用 service.bat 安装为服务:

D:tomcatbinservice.bat install TomcatMyApp

然后在“服务”中启动 TomcatMyApp,并设置为自动启动。


三、配置防火墙和端口

确保服务器防火墙允许访问你的应用端口(如 8080)。

开放端口:

  1. 打开“Windows Defender 防火墙” → “高级设置”
  2. 添加入站规则:
    • 协议:TCP
    • 端口:8080(或其他你使用的端口)
    • 允许连接

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

如果你想用域名访问,可以使用 IIS + ARRNginx 做反向X_X。

使用 IIS + ARR(Windows 原生支持):

  1. 安装 IIS(服务器管理器 → 添加角色 → Web 服务器)
  2. 安装 ARR(Application Request Routing)
  3. 配置 URL 重写规则,将请求X_X到 http://localhost:8080

五、日志监控与维护

  • 定期查看日志文件(如 app.log、Tomcat 的 logs/catalina.out
  • 使用任务计划程序定期重启服务(可选)
  • 使用 Windows 事件查看器监控服务状态

六、安全建议

  1. 不要以管理员权限运行 Java 应用
  2. 更新 Java 和系统补丁
  3. 使用防火墙限制访问 IP(如只允许特定 IP 访问管理端口)
  4. 避免在 URL 中暴露敏感信息

总结

部署方式 适用场景 推荐程度
java -jar + NSSM Spring Boot 等独立应用 ⭐⭐⭐⭐⭐
Tomcat 部署 WAR 传统 Java Web 应用 ⭐⭐⭐⭐
IIS 反向X_X 需要域名、HTTPS ⭐⭐⭐⭐

如有具体应用类型(如 Spring Boot、普通 Web、微服务等),可提供更详细配置。欢迎继续提问!

未经允许不得转载:CDNK博客 » Java用Windows server怎么部署?