Java 17 中没有 JRE 包的解决方案

随着 Java 17 的发布,Oracle 及其社区团队决定不再提供独立的 Java Runtime Environment (JRE) 包。这可能会给一些初入行的开发者带来困惑,但实际上,这是一种更现代的 Java 分发方式,意在简化安装和部署。本文将为你详细说明如何在没有 JRE 的情况下设置 Java 开发环境,运行 Java 应用程序,以及分发 Java 应用程序。

整体流程

为了实现这一目标,我们大致上可以分为以下几个步骤:

步骤 描述
1 下载并安装 Java Development Kit (JDK)
2 配置 Java 环境变量
3 编写和编译 Java 代码
4 运行 Java 应用程序
5 打包 Java 应用程序(可选)

1. 下载并安装 JDK

首先,你需要下载 Java 17 的 JDK。

  1. 前往 [Oracle 官网]( 或 [OpenJDK 官网]( JDK 安装包。
  2. 按照安装向导的指示完成安装。

2. 配置 Java 环境变量

对于 Windows 用户:

# 右键点击“此电脑” -> “属性” -> “高级系统设置” -> “环境变量”
# 在系统变量中,点击“新建”并添加以下变量
Variable name: JAVA_HOME
Variable value: C:\Program Files\Java\jdk-17(你的 JDK 路径)

# 在“系统变量”中找到 Path,点击“编辑”,添加以下路径
%JAVA_HOME%\bin

对于 macOS/Linux 用户,你可以编辑 ~/.bash_profile~/.bashrc 文件:

# 添加以下内容
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-17.jdk/Contents/Home  # macOS 示例
export PATH=$JAVA_HOME/bin:$PATH

3. 编写和编译 Java 代码

接下来,我们对如何编写和编译简单的 Java 程序进行讲解。

创建一个名为 HelloWorld.java 的文件,内容如下:

public class HelloWorld {
    public static void main(String[] args) {
        System.out.println("Hello, World!");
    }
}

注释

  • public class HelloWorld: 定义一个公共类,名称为 HelloWorld
  • public static void main(String[] args): 主方法,是 Java 应用程序的入口点。
  • System.out.println("Hello, World!");: 在控制台输出 "Hello, World!"。

编译 Java 程序:

javac HelloWorld.java
# 运行 javac 命令来编译源代码文件

4. 运行 Java 应用程序

编译完成后,生成了一个名为 HelloWorld.class 的字节码文件。现在你可以运行它:

java HelloWorld
# 运行 Java 应用程序,输出 "Hello, World!"

5. 打包 Java 应用程序(可选)

如果你希望将你的 Java 应用程序打包成 JAR 文件,可以使用以下命令:

jar cf HelloWorld.jar HelloWorld.class
# 创建一个名为 HelloWorld.jar 的 JAR 文件,包含 HelloWorld.class

状态图

下面是一个简单的状态图,展示用户从安装 JDK 到运行 Java 程序的状态变化:

stateDiagram
    [*] --> JDK下载
    JDK下载 --> JDK安装
    JDK安装 --> 环境变量配置
    环境变量配置 --> 编写代码
    编写代码 --> 编译代码
    编译代码 --> 运行程序
    运行程序 --> [*]

序列图

下面是序列图,展示编写、编译和运行 Java 程序的过程:

sequenceDiagram
    participant User
    participant JavaCompiler as Compiler
    participant JavaRuntime as Runtime

    User->>Compiler: 编写 HelloWorld.java 文件
    Compiler-->>User: 代码完成
    User->>Compiler: javac HelloWorld.java
    Compiler-->>User: 生成 HelloWorld.class
    User->>Runtime: java HelloWorld
    Runtime-->>User: 输出 "Hello, World!"

结尾

至此,你已经学习了如何在没有 JRE 包的情况下设置和运行 Java 应用程序。通过安装 JDK、配置环境变量、编写和编译代码、以至于创建 JAR 包,你现在可以直接使用你的 JDK 来开发和运行 Java 应用程序。

虽然没有了单独的 JRE 包看似是一个变化,但实际上它简化了 Java 的分发和管理方式。希望这篇文章能对你有所帮助,让你在 Java 开发的道路上迈出坚实的一步!如有任何疑问,请随时向更有经验的开发者请教。祝你好运!