服务器上需要装什么才能运行java程序?

要在服务器上运行 Java 程序,你需要安装以下基本组件:


1. Java 运行环境(JRE)或 Java 开发工具包(JDK)

  • JRE(Java Runtime Environment):仅用于运行已编译的 Java 程序(.class 文件或 .jar 文件)。
  • JDK(Java Development Kit):包含 JRE 和开发工具(如 javac 编译器),如果你需要在服务器上编译 Java 源代码,则需要 JDK。

建议安装 JDK,即使只运行程序,也更方便后续维护。

常见版本:

  • Java 8(LTS):广泛兼容,很多企业仍在使用。
  • Java 11(LTS):长期支持版本,推荐新项目使用。
  • Java 17(LTS):当前主流的 LTS 版本。
  • Java 21(LTS):最新的长期支持版本(2023年发布)。

2. 如何安装 Java?

在 Linux 服务器上(以 Ubuntu/Debian 为例):

# 更新包列表
sudo apt update

# 安装 OpenJDK 17(推荐)
sudo apt install openjdk-17-jdk

# 或只安装 JRE
sudo apt install openjdk-17-jre

检查是否安装成功:

java -version
javac -version   # 如果安装了 JDK

输出示例:

openjdk version "17.0.8" 2023-07-18
OpenJDK Runtime Environment (build 17.0.8+7-Debian-1deb12u1)
OpenJDK 64-Bit Server VM (build 17.0.8+7-Debian-1deb12u1, mixed mode)

3. 运行 Java 程序

示例:运行一个 .jar 文件

java -jar your-program.jar

常用参数(可选):

java -Xms512m -Xmx2g -jar your-program.jar
  • -Xms:初始堆内存
  • -Xmx:最大堆内存

4. 其他可选组件(根据需求)

组件 说明
Tomcat / Jetty / Spring Boot 内嵌服务器 如果是 Web 应用,可能需要 Servlet 容器或直接运行 Spring Boot jar
Maven / Gradle 如果需要在服务器上编译项目
Systemd 服务脚本 将 Java 程序注册为后台服务,开机自启
防火墙配置 开放程序监听的端口(如 8080)
环境变量 设置 JAVA_HOME(某些程序需要)

设置 JAVA_HOME(可选但推荐):

# 查看 Java 安装路径
sudo update-alternatives --config java
# 通常路径如:/usr/lib/jvm/java-17-openjdk-amd64

# 编辑 profile 文件
sudo nano /etc/environment

添加:

JAVA_HOME="/usr/lib/jvm/java-17-openjdk-amd64"

然后加载:

source /etc/environment
echo $JAVA_HOME

总结:最小化配置清单

✅ 必须安装:

  • [x] OpenJDK(如 JDK 17 或更高 LTS 版本)

✅ 推荐设置:

  • [x] JAVA_HOME 环境变量
  • [x] 使用 systemd 管理 Java 进程(长期运行服务)
  • [x] 配置防火墙和安全组(开放端口)

如果你告诉我你的 Java 程序类型(如普通 jar、Spring Boot、Web 应用等),我可以提供更具体的部署建议。

未经允许不得转载:CLOUD技术博 » 服务器上需要装什么才能运行java程序?