标签:java intellij-idea system-properties
$java -version
打印如下
java version "1.8.0_40"
Java(TM) SE Runtime Environment (build 1.8.0_40-b27)
Java HotSpot(TM) 64-Bit Server VM (build 25.40-b25, mixed mode)
我感兴趣的信息是完整的java版本,System.getProperties()似乎没有这些信息.它只有_之前的版本,而不是更新信息,在我的情况下为40.
编辑:当我运行测试代码System.out.println(System.getProperty(“java.version”);打印完整版本.但我正在开发一个大型代码库,我无法得到相同的结果.我检查了代码库,如果属性在某种程度上被覆盖,但找不到任何东西.
EDIT_2:当我用javac手动编译代码然后在终端上用java运行它时,我发现java.version打印1.8.0_40.但是当我通过IntelliJ运行它时,它只打印1.8.0.
解决方法:
您可以使用此属性获取完整版本:
java.runtime.version
这是一个例子:
public class Test {
public static void main(String[] args) {
System.out.println(System.getProperty("java.runtime.version"));
}
}
在我的机器上,我得到以下输出:
1.8.0_92-b14
如果您之前只想要该部件,请使用以下系统属性:
java.version
这将输出:
1.8.0_92
标签:java,intellij-idea,system-properties 来源: https://codeday.me/bug/20190829/1758633.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。