确定正确的路径JAVA_HOME在Ubuntu系统上有点复杂,因为它使用了替代方案.在我的机器上,这是替代方案在到达实际的java或javac之前至少创建两个间接层的方式.
usr/bin/javac -> /etc/alternatives/
/etc/alternatives/java -> /usr/lib/jvm/jdk1.7/bin/javac
Run Code Online (Sandbox Code Playgroud)
如果我设置JAVA_HOME为/usr/lib/jvm/jdk1.7,那么我的系统java可能会与指向的java不一致JAVA_HOME,如果我更新替代使用另一个java.
我的问题是,JAVA_HOME在使用替代品的系统上,正确的价值是什么.我倾向于认为JAVA_HOME应该这样做/usr
这样TOMCAT或使用它的任何其他软件都会将"bin"附加到JAVA_HOME并找到它需要的所有可执行文件.
这是JAVA_HOME使用替代品的系统的正确值.大多数软件JAVA_HOME仅用于查找可执行文件,还是使用该值来查找与JDK捆绑在一起的其他工件(例如安全策略文件等)?如果是前者的话,我觉得我们可以使用/usr的JAVA_HOME,但如果是后者,那么我想使用的唯一方法JAVA_HOME正确是通过牺牲的替代功能.
好问题 - 我在Linux上使用"替代品"而且"一切正常" - 我从来没有真正考虑过它.
我相信这就是答案:
JAVA_HOME=/usr/lib/jvm/default-java
1)"alternative"将符号链接设置为您当前配置的"真正"Java
2)您需要做的就是将$ JAVA_HOME设置为符号链接
| 归档时间: |
|
| 查看次数: |
4704 次 |
| 最近记录: |