一 安装JDK与基础验证
在Debian上搭建Ja va开发环境,第一步自然是安装JDK。别急着搜Oracle的版本——Debian官方仓库里已经准备好了OpenJDK,直接拿来用就行。先更新索引,再装包:
- 装系统默认版本:
sudo apt update && sudo apt install -y default-jdk - 或者指定版本,比如OpenJDK 17:
sudo apt install -y openjdk-17-jdk
装完后,用两个命令快速验证:ja va -version 和 ja vac -version。如果你看到版本号正常输出,说明JDK已经就位。这里有个小细节:Debian仓库里提供的OpenJDK包,记得选带 -jdk 后缀的那个——因为还有不包含编译器的JRE包,只装那个可没法搞开发。

二 配置环境变量与JA VA_HOME
JDK装好了,但很多工具(比如Ma ven、Gradle,甚至一些IDE)会依赖 JA VA_HOME 环境变量才能找到JDK。怎么配?先找到实际安装路径:
- 执行
readlink -f $(which ja va),输出通常像/usr/lib/jvm/ja va-17-openjdk-amd64/bin/ja va这样。 - 取前面的目录作为
JA VA_HOME:/usr/lib/jvm/ja va-17-openjdk-amd64。
然后看你想让变量生效的范围——用户级还是系统级:
- 用户级(仅当前用户):编辑
~/.bashrc,末尾追加两行:
export JA VA_HOME=/usr/lib/jvm/ja va-17-openjdk-amd64
export PATH=$JA VA_HOME/bin:$PATH
然后source ~/.bashrc让配置立即生效。 - 系统级(所有用户):编辑
/etc/environment,添加一行JA VA_HOME="/usr/lib/jvm/ja va-17-openjdk-amd64"。新开的会话会自动读取,想立刻生效就source /etc/environment。
最后用 echo $JA VA_HOME 检查一下,如果返回的是你设置的那个路径,就搞定了。
三 多版本管理与切换
工作中难免需要切换Ja va版本——比如维护老项目用Ja va 11,新项目用Ja va 17。Debian的 update-alternatives 机制就是为了解决这个问题的:
- 注册一个版本(假设已安装Ja va 11):
sudo update-alternatives --install /usr/bin/ja va ja va /usr/lib/jvm/ja va-11-openjdk-amd64/bin/ja va 300
sudo update-alternatives --install /usr/bin/ja vac ja vac /usr/lib/jvm/ja va-11-openjdk-amd64/bin/ja vac 300 - 然后通过
sudo update-alternatives --config ja va交互式选择默认版本。同样对ja vac也执行一次。
这里提醒一句:ja va 和 ja vac 要分别注册、分别切换,最好保持一致,否则运行时JVM版本和编译器版本不一致,很容易出幺蛾子。
四 编译与运行示例
环境配好了,写个Hello World试试:
- 单文件场景:创建一个
HelloWorld.ja va,内容就是标准的public class HelloWorld { public static void main(String[] args) { System.out.println("Hello, World!"); } }。然后ja vac HelloWorld.ja va编译,ja va HelloWorld运行。 - 多目录项目:假设源码在
src/com/example/Main.ja va,编译时用ja vac -sourcepath src -d bin src/com/example/Main.ja va,运行则ja va -cp bin com.example.Main。
注意Linux下类路径分隔符是冒号(:),和Windows的分号不同,别搞混了。
五 项目构建与IDE
一旦项目复杂起来,手写ja vac命令就不现实了。这时候该上构建工具了:
- Ma ven:直接
sudo apt install -y ma ven,然后在项目根目录执行mvn clean install。 - Gradle:推荐用SDKMAN安装(下面会提到),装好后执行
gradle build。
编辑器方面,如果你习惯VS Code,sudo apt install -y code 后安装 Ja va Extension Pack 插件即可;想用IntelliJ IDEA,从JetBrains官网下载 .deb 包,然后 sudo dpkg -i ideaIC-*.deb 安装。
最后聊一个省心工具——SDKMAN,它可以帮你管理多个版本的JDK、Ma ven、Gradle等工具,切换起来比 update-alternatives 更直观:
- 安装:
curl -s "https://get.sdkman.io" | bash && source "$HOME/.sdkman/bin/sdkman-init.sh" - 查看可用Ja va版本:
sdk list ja va - 安装并设为默认:
sdk install ja va 17.0.9-open && sdk default ja va 17.0.9-open
这样一来,你可以在不同项目间快速切换JDK版本,而不用担心系统环境乱掉——这才是现代Ja va开发的正确姿势。