在 Debian 上“编译 Java”通常有两种理解,我分别说明,你可以按需要选择。
sudo apt update
sudo apt install openjdk-17-jdk
你也可以选择其他版本:
openjdk-11-jdk
openjdk-21-jdk
查看是否安装成功:
java -version
javac -version
nano Hello.java
public class Hello {
public static void main(String[] args) {
System.out.println("Hello Debian");
}
}
⚠️ 文件名必须与类名一致
javac Hello.java
生成:
Hello.class
java Hello
输出:
Hello Debian
如果你是想从源码编译 JDK 本身(比如研究 JVM):
sudo apt install \
build-essential \
libx11-dev libxext-dev libxrender-dev \
libxtst-dev libxt-dev \
libcups2-dev \
libfreetype6-dev \
libfontconfig1-dev \
libasound2-dev \
unzip zip \
autoconf \
make \
gcc \
g++
示例(JDK 17):
git clone https://github.com/openjdk/jdk17.git
cd jdk17
bash configure
常见选项:
bash configure --enable-debug --with-jvm-variants=server
make images
编译完成后:
cd build/*/images/jdk
./bin/java -version
openjdk-17openjdk-11openjdk-21sudo update-alternatives --config java
sudo update-alternatives --config javac
| 目的 | 做法 |
|---|---|
| 编译 Java 程序 | apt install openjdk + javac |
| 编译 JDK 本身 | 下载 OpenJDK 源码 + make |
| 新手 | 用第一种 |
如果你能具体说一句:
是 编译 Java 程序,还是 编译 JDK 源码?
我可以给你更精确的命令。