我正在努力了解Java的import / classpath情况如何工作。我想产生一个编译错误,所以我说'让我试着摆弄Java环境变量'(比如让JAVA_HOME
成为JAV_HOM
或者等等)。
但它似乎无法奏效。一切都很好。我使用drJava是否重要?我甚至尝试重新启动,但是没有这样做。
答案 0 :(得分:1)
摆弄JAVA_HOME不太可能破坏类路径。
JAVA_HOME环境变量主要用于告知您的代码(如果需要知道)以及Java安装所在的任何第三方工具。 Java安装(例如java
和javac
工具)不关注它。运行这些命令时,隐式给出安装位置...它是您正在运行的Java工具的祖父目录。
其次,安装中可能未找到的内容(例如“rt.jar”和“tools.jar”文件)实际上位于“引导类路径”而不是常规类路径。 bootclasspath由相关工具隐式构成......除非您通过命令行选项等明确覆盖它。
现在我不知道drJava如何管理它的类路径。它可能会注意CLASSPATH环境变量,但如果它忽略它我不会感到惊讶。 (IDE通常根据项目结构等以自己的方式管理类路径。)
如果你想这样做,你最好从命令行运行java
和javac
。对于这些,类路径由-jar
选项(以及JAR清单中的内容),-cp
选项或CLASSPATH
环境变量确定。这在java
命令的在线手册中有所描述。