2

我使用的是 jdk 1.7,安装后我没有设置 JAVA_HOME 或 CLASSPATH 环境变量,我用它来编译一个 servlet 类,一切正常。

所以我想知道,为什么我不应该设置这些环境变量?JDK 可以自动解析 CLASSPATH 吗?

4

3 回答 3

5

JAVA_HOME某些工具(Ant、Maven 等)使用,但 Java(或 javac)本身不需要。

CLASSPATH永远不应该使用。它设置了一个全局类路径,该路径应该对安装在您计算机上的多个 Java 程序通用,这是完全不现实的。每个程序都应该有自己的类路径作为参数传递给使用该-classpath选项的命令。

在所有平台上都是如此。

于 2013-08-11T10:21:58.267 回答
0

大多数 Unix 和 Mac 在“终端”中使用所谓的 Bash Shell。当您在 Bash shell 中启动可执行程序(具有可执行文件权限)时,系统会在 PATH 中列出的所有目录中搜索该程序。

JAVA_HOME路径,可以设置为:

setenv JAVA_HOME /System/Library/Frameworks/JavaVM.framework/Home
于 2013-08-11T10:25:57.500 回答
0

设置JAVA_HOME

$ vi ~/.bash_profile 

export JAVA_HOME=$(/usr/libexec/java_home)

$ source ~/.bash_profile

$ echo $JAVA_HOME
/Library/Java/JavaVirtualMachines/jdk-11.0.1.jdk/Contents/Home
于 2019-04-25T02:06:54.613 回答