"jdk1.8.0_121/bin" 中的 "java" 文件与 "jdk1.8.0_121/jre/bin" 中的文件有何区别?

Whats the difference between the "java" file found in "jdk1.8.0_121/bin" and the one that's in "jdk1.8.0_121/jre/bin"?

我需要设置 JAVA_HOME 变量,但我不知道我必须选择哪条路线,或者是否相同。

我有两个名为 "java" 的文件,一个在 "jdk/bin" 文件夹中,另一个在 "jdk/jre/bin" 文件夹中。它们之间有什么区别?因为在网上搜索我看到有人用一个,另一个人用另一个。

Whats the difference between the java file found in jdk1.8.0_121/bin and the one that's in jdk1.8.0_121/jre/bin?

最近版本Java没有区别;例如Java 8 或更高版本。我听说旧版本有细微差别。

So the route for JAVA_HOME in the /etc/environment where should be pointing at?

JAVA_HOME变量应该指向Java安装目录;即 jdk1.8.0_121 在你的情况下。

如果您将 PATH 变量配置为显式包含 Java bin 目录 1,您通常会使用 jdk1.8.0_121/bin 以便开发工具在命令搜索路径上。

请注意 JAVA_HOMEPATH 有不同的用途。

  • JAVA_HOME 用于告诉第 3 方工具 Java 安装位置。
  • PATH 被 shell 用来解析命令名称。

1 - 在 Linux 上执行此操作的另一种方法是使用 alternatives 工具。