温馨提示×

如何在Debian上部署Java编译环境

小樊
42
2026-01-03 14:07:56
栏目: 编程语言

在 Debian 上部署 Java 编译环境的实用步骤

一 安装 JDK

  • 更新索引并安装编译器与运行时(以 OpenJDK 11 为例,稳定且通用):
    • 命令:sudo apt update && sudo apt install -y openjdk-11-jdk
  • 如需其他版本,可替换为:openjdk-8-jdk、openjdk-17-jdk;或直接安装默认 JDK:sudo apt install -y default-jdk
  • 安装完成后确认版本:java -version、javac -version 均应返回对应版本信息

二 配置环境变量

  • 查找实际安装路径(便于后续设置 JAVA_HOME):readlink -f $(which java) 或 update-alternatives --config java
  • 常见路径示例:/usr/lib/jvm/java-11-openjdk-amd64
  • 方案 A(当前用户生效):编辑 ~/.bashrc
    • 添加:
      • export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
      • export PATH=$JAVA_HOME/bin:$PATH
    • 使生效:source ~/.bashrc
  • 方案 B(系统范围生效):编辑 /etc/environment
    • 添加:JAVA_HOME=“/usr/lib/jvm/java-11-openjdk-amd64”
    • 使生效:source /etc/environment(或重新登录)
  • 验证:echo $JAVA_HOME;java -version;javac -version

三 多版本管理与切换

  • 注册多个 JDK 到 alternatives(示例为 OpenJDK 8 与 11):
    • sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/java-8-openjdk-amd64/bin/java 1
    • sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/java-11-openjdk-amd64/bin/java 2
  • 交互选择默认版本:sudo update-alternatives --config java
  • 如需,同步注册 javac(可选):
    • sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/java-11-openjdk-amd64/bin/javac 2
    • sudo update-alternatives --config javac

四 编译与运行测试

  • 创建测试源文件:nano HelloWorld.java
  • 源码:
    • public class HelloWorld { public static void main(String[] args) { System.out.println(“Hello, World!”); } }
  • 编译与运行:
    • javac HelloWorld.java
    • java HelloWorld
  • 预期输出:Hello, World!

五 进阶与常见问题

  • 命令行调试:编译时加入调试信息 javac -g HelloWorld.java;使用 jdb 进行断点、单步等调试(如:jdb HelloWorld)
  • 手动安装 Oracle JDK(当仓库无法满足版本需求时):
    • 下载 .tar.gz 至 /usr/local,解压:sudo tar -xvzf jdk-11_linux-x64_bin.tar.gz -C /usr/local
    • 设置 JAVA_HOME=/usr/local/jdk-11.0.11;PATH=$JAVA_HOME/bin:$PATH;source /etc/profile 或相应配置文件
  • 常见问题速查:
    • “java/javac 找不到”:检查 PATH 是否包含 $JAVA_HOME/bin
    • “JAVA_HOME 不对”:用 readlink -f $(which java) 确认实际路径并修正 JAVA_HOME
    • 版本冲突:用 update-alternatives --config java 统一默认版本

0