作为一名在 *NIX 系统(OS X、Ubuntu、...)之间切换的 Java 开发人员,虽然我总是可以“让”我的 JDK 启动并运行,但在许多需要 JAVA_HOME 的软件包中似乎没有明确的 JAVA_HOME 定义要设置 :
例如
- MAVEN : "JAVA_HOME, 指你的 JDK 目录"
- HADOOP : "JAVA_HOME,指定 Java 1.5.x 安装的路径"
- SUN : "JAVA_HOME 是包含 JRE 的目录"
因此,我对此事有两个问题(欢迎任何见解,但具体来说,我有这两个问题):
1)mac os X java安装是否将目标从“JavaVM.frameworks”目录复制到usr/bin?
2) JAVA_HOME 的“定义”是什么?显然,我们不能将 JAVA_HOME 简单地定义为“安装 java 的位置”,因为这个定义是模棱两可的,因为 java 可以同时存在于 HOME 位置(即在 /System/Library/Fraemworks/.....),或者或者,它也可能直接在 /usr/bin 目录中?
我的想法
我相信 JAVA_HOME 实际上不仅仅指二进制“java”程序。JAVA_HOME 可能是指一组与 java 相关的目录和二进制文件的位置......但是,我仍然不清楚这包括什么,而且我提出的这个定义是否足够精确,有用。