是否有类似 System.getProperty("java.home") 的属性将返回 JDK 目录而不是 JRE 目录?我查看了https://docs.oracle.com/javase/1.5.0/docs/api/java/lang/System.html#getProperties(),JDK 似乎没有任何内容。
MSumulong
问问题
7035 次
3 回答
3
一种方法是设置一个系统环境变量,如“JAVA_HOME”并使用它。
它可能不是最好的解决方案,但它会起作用,这是其他需要 JDK 而不是 JRE(如 CruiseControl)的应用程序在设置它们时要求您执行的操作。
于 2008-12-09T18:48:35.527 回答
2
没有类似于java.home
JDK 的属性。有一些经验法则可以帮助检测您正在运行的 JRE 是否是 JDK 的一部分。例如,查找“${java.home}/../lib/tools.jar”。换句话说,在某些情况下,您可能会建议一个默认值,但一般来说,用户应该告诉您使用哪个 JDK。
于 2008-12-09T19:08:16.517 回答
0
另一种方法是通过属性文件定义 JDK 的路径。这可以是系统环境变量的补充,以允许覆盖。
根据您的用例,您可以将此属性文件放在主目录中或与您的应用程序一起打包。
于 2008-12-09T19:07:39.403 回答