在 Linux 环境下开发 Java 程序:从入门到实践
目录
- 引言:为什么选择 Linux 开发 Java?
- 环境准备
- 1 选择 Linux 发行版
- 2 安装 Java 开发工具包
- 3 验证 Java 安装
- 4 安装集成开发环境
- 第一个 Java 程序:Hello, World!
- 1 使用文本编辑器(如 Vim/VS Code)
- 2 使用命令行编译与运行
- 3 在 IDE 中创建和运行
- 项目构建与管理
- 1 使用 Maven 管理项目
- 2 使用 Gradle 管理项目
- 日常开发任务
- 1 使用 Git 进行版本控制
- 2 调试 Java 程序
- 3 性能分析
- 高级主题
- 1 使用 Docker 容器化 Java 应用
- 2 使用 systemd 管理后台服务
引言:为什么选择 Linux 开发 Java?
Linux 作为服务器端和云计算领域的绝对主流操作系统,为 Java 开发提供了一个稳定、高效且成本极低的平台,选择在 Linux 上开发 Java 程序具有以下显著优势:

- 原生性能与稳定性:Java 虚拟机在 Linux 上运行得非常出色,其内存管理和垃圾回收机制与 Linux 内核结合紧密,能提供卓越的性能和稳定性。
- 强大的命令行工具:Linux 的 Shell(如 Bash)提供了强大的文本处理、文件操作和自动化脚本能力,极大地提升了开发效率。
- 免费与开源:绝大多数 Linux 发行版和 Java 开发工具都是免费和开源的,无需支付任何许可费用。
- 与服务器环境一致:在 Linux 上开发可以确保开发、测试和生产环境的高度一致性,减少因环境差异导致的问题。
- 丰富的生态系统:拥有海量的服务器软件、容器工具(如 Docker)、监控工具和包管理器,与 Java 生态完美融合。
环境准备
1 选择 Linux 发行版
对于 Java 开发,以下发行版是优秀的选择:
- Ubuntu:对新手友好,社区庞大,软件包丰富,推荐使用 LTS (Long Term Support) 版本,如 20.04 或 22.04。
- CentOS / Rocky Linux / AlmaLinux:企业级的稳定选择,广泛用于生产服务器,RHEL/CentOS 系统使用
yum或dnf包管理器。 - Debian:Ubuntu 的上游,非常稳定和纯净。
2 安装 Java 开发工具包
JDK 是编译和运行 Java 程序的基础,推荐安装 LTS 版本,如 OpenJDK 11 或 OpenJDK 17。
以 Ubuntu 为例 (使用 apt):
# 更新软件包列表 sudo apt update # 安装 OpenJDK 17 (推荐) sudo apt install openjdk-17-jdk # 如果需要其他版本,OpenJDK 11 # sudo apt install openjdk-11-jdk
以 CentOS/Rocky Linux 为例 (使用 dnf):

# 安装 OpenJDK 17 (推荐) sudo dnf install java-17-openjdk-devel # 如果需要其他版本,OpenJDK 11 # sudo dnf install java-11-openjdk-devel
3 验证 Java 安装
安装完成后,打开终端,输入以下命令验证:
# 查看版本信息,确认安装成功 java -version # 查看已安装的 JDK 列表 update-java-alternatives --list # (在 CentOS/RHEL 上可能使用: alternatives --display java)
你应该能看到类似以下的输出:
openjdk version "17.0.8" 2025-07-18
OpenJDK Runtime Environment (build 17.0.8+7-Ubuntu-122.04)
OpenJDK 64-Bit Server VM (build 17.0.8+7-Ubuntu-122.04, mixed mode, sharing)
4 安装集成开发环境
虽然命令行开发可行,但 IDE 能大幅提升效率,最流行的选择是:
- IntelliJ IDEA:由 JetBrains 开发,功能最强大,社区版免费。
- Eclipse IDE for Java Developers:老牌开源 IDE,插件生态丰富。
以 IntelliJ IDEA 为例:

- 访问 JetBrains 官网。
- 下载 "Community" 社区版。
- 下载后,通常是一个
.tar.gz压缩包,解压即可使用:tar -xzf ideaIC-*.tar.gz cd idea-IC-* ./bin/idea.sh
第一个 Java 程序:Hello, World!
1 使用文本编辑器
创建一个工作目录,并使用 vim 或 nano 等编辑器创建 HelloWorld.java 文件。
# 创建并进入项目目录 mkdir ~/java-dev cd ~/java-dev # 使用 vim 创建并编辑文件 vim HelloWorld.java
在 vim 中输入以下代码:
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello, Linux World!");
}
}
保存并退出 (wq)。
2 使用命令行编译与运行
这是 Java 开发最基础也是最核心的步骤。
# 1. 编译 .java 源文件,生成 .class 字节码文件 # javac 是 Java Compiler 的缩写 javac HelloWorld.java # 2. 运行编译后的 .class 文件 # java 命令会启动 JVM 来执行指定类的 main 方法 java HelloWorld
注意:运行 java 命令时,不要在类名后面加上 .class 后缀,这是一个常见的初学者错误。
预期输出:
Hello, Linux World!
3 在 IDE 中创建和运行
- 打开 IntelliJ IDEA。
- 选择 "New Project"。
- 选择 "Java",确保 Project SDK 已经设置为你的 OpenJDK 17。
- 点击 "Create"。
- 在左侧
src目录上右键,选择 "New" -> "Java Class"。 - 输入类名
HelloWorld并回车。 - 将代码粘贴进去,然后点击绿色的运行按钮。
项目构建与管理
现代 Java 项目很少只有一个文件,依赖管理至关重要。
1 使用 Maven
Maven 是一个强大的项目管理和构建自动化工具。
创建 Maven 项目
在终端中,使用 Maven 的原型(Archetype)来快速创建一个标准项目结构:
mvn archetype:generate -DgroupId=com.example -DartifactId=my-app -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false
这会创建一个名为 my-app 的目录,包含标准的 Maven 项目结构。
理解项目结构
my-app/
├── pom.xml # Maven 项目的核心配置文件,定义项目信息、依赖、插件等
└── src/
├── main/
│ ├── java/ # 源代码目录
│ └── resources/ # 资源文件目录
└── test/
├── java/ # 测试代码目录
└── resources/ # 测试资源文件目录
编译和运行
# 进入项目根目录 cd my-app/ # 编译项目 mvn compile # 运行主程序 (需要在 pom.xml 中配置了 mainClass 或使用 exec 插件) # 更简单的方式是直接运行测试 mvn test
2 使用 Gradle
Gradle 是一个更现代、更灵活的构建工具,其构建脚本使用 Groovy 或 Kotlin 语言编写。
创建 Gradle 项目
可以使用 gradle init 命令,或者直接在 IDE 中创建。
理解项目结构
my-gradle-app/
├── build.gradle.kts # Groovy/Kotlin DSL 构建脚本
├── settings.gradle.kts # 项目设置
└── src/
└── main/
├── java/
└── resources/
编译和运行
# 进入项目根目录 cd my-gradle-app/ # 编译项目 ./gradlew build # 运行主程序 (需要在 build.gradle.kts 中配置 application) ./gradlew run
日常开发任务
1 使用 Git 进行版本控制
Git 是现代软件开发的必备工具,在 Linux 上使用 Git 非常方便。
初始化仓库
cd ~/java-dev/my-app git init
配置 Git
git config --global user.name "Your Name" git config --global user.email "you@example.com"
基本操作
# 添加文件到暂存区 git add . # 提交更改 git commit -m "Initial commit: Add Hello World" # 查看状态 git status # 查看历史 git log
2 调试 Java 程序
IDE 提供了强大的图形化调试器,以下是使用命令行调试的简要介绍:
使用 jdb (Java Debugger):
# 先编译代码 javac -g HelloWorld.java # 启动 jdb,并指定要调试的类 jdb HelloWorld # 在 jdb 命令行中,可以设置断点、运行、单步执行等 # (jdb) stop at HelloWorld:5 # (jdb) run # (jdb) next # (jdb) locals
3 性能分析
当程序变慢时,需要分析性能瓶颈。
-
VisualVM:JDK 自带的图形化监控和性能分析工具。
# 启动 VisualVM jvisualvm
它可以连接到本地或远程运行的 Java 进程,进行内存分析、CPU 分析和线程监控。
-
JProfiler / YourKit:商业工具,功能更强大,是专业性能分析的首选。
高级主题
1 使用 Docker 容器化 Java 应用
Docker 可以将 Java 应用及其所有依赖打包到一个轻量级、可移植的容器中。
创建 Dockerfile
在项目根目录创建一个名为 Dockerfile 的文件:
# 使用官方的 OpenJDK 17 镜像作为基础镜像 FROM openjdk:17-jdk-slim # 设置工作目录 WORKDIR /app # 将 target 目录下的 jar 文件复制到容器中 # 假设你使用 Maven 或 Gradle 构建后,jar 包在 target/ 或 build/libs/ 目录 COPY target/my-app-1.0-SNAPSHOT.jar app.jar # 暴露应用运行的端口 EXPOSE 8080 # 定义容器启动时执行的命令 ENTRYPOINT ["java", "-jar", "app.jar"]
构建并运行镜像
# 构建镜像,-t my-java-app 是给镜像命名 docker build -t my-java-app . # 运行容器,-p 将容器的8080端口映射到主机的8080端口 docker run -p 8080:8080 my-java-app
2 使用 systemd 管理后台服务
当你的 Java 程序需要作为后台服务运行时(例如一个 Web 服务器),可以使用 systemd。
创建服务文件
创建一个服务文件,/etc/systemd/system/my-java-app.service:
[Unit] Description=My Java Application Service After=network.target [Service] # 替换为你的实际 Java 程序路径和启动参数 ExecStart=/usr/bin/java -jar /path/to/your/app.jar --spring.config.location=/path/to/your/application.properties # 运行服务时的用户 User=javauser Group=javagroup # 自动重启服务 Restart=on-failure [Install] WantedBy=multi-user.target
管理服务
# 重新加载 systemd 配置 sudo systemctl daemon-reload # 启动服务 sudo systemctl start my-java-app.service # 设置开机自启 sudo systemctl enable my-java-app.service # 查看服务状态 sudo systemctl status my-java-app.service # 查看日志 sudo journalctl -u my-java-app.service -f
在 Linux 环境下开发 Java 程序,结合了 Java 的跨平台能力和 Linux 的强大与稳定,从基础的命令行编译,到使用 Maven/Gradle 进行项目构建,再到 Docker 容器化和 systemd 服务管理,Linux 为 Java 开发者提供了一个功能完备且高效的工具链,掌握这些技能,将使您成为一名更专业、更全面的 Java 开发者。
附录:常用命令速查
| 功能 | 命令 |
|---|---|
| Java/JDK | |
| 检查 Java 版本 | java -version |
| 编译 Java 源文件 | javac MyClass.java |
| 运行 Java 类 | java MyClass |
| Maven | |
| 编译项目 | mvn compile |
| 打包项目 | mvn package |
| 安装项目到本地仓库 | mvn install |
| 运行测试 | mvn test |
| 跳过测试构建 | mvn package -DskipTests |
| Git | |
| 初始化仓库 | git init |
| 添加文件到暂存区 | git add <file> 或 git add . |
| 提交更改 | git commit -m "commit message" |
| 查看状态 | git status |
| 查看日志 | git log |
| Docker | |
| 构建 Docker 镜像 | docker build -t <image-name> . |
| 运行 Docker 容器 | docker run -p <host-port>:<container-port> <image-name> |
| Systemd | |
| 启动服务 | sudo systemctl start <service-name> |
| 停止服务 | sudo systemctl stop <service-name> |
| 启用开机自启 | sudo systemctl enable <service-name> |
| 查看服务状态 | sudo systemctl status <service-name> |
