从命令行获取 Java 合规级别信息
Get Java compliance level information from command line
我使用 Java 14,我想为 Eclipse 编写一个自动配置脚本,以防我在我的机器上更新 Java。 Eclipse 使用以下行指定默认 Java VM:
<vmSettings defaultVM="57,org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType13,1597823290779" defaultVMConnector="">
如您所见,“defaultVM”属性中的第一个参数是合规级别,我不知道如何从 java 命令中获取此值(在本例中为“57”) . “java --version”只给我“14.0.2”,但这不是合规级别。关于如何在命令行上获得合规性级别还有其他一些参数吗?然后我会用 PowerShell 命令解析和评估它。其他命令如“javac”也可用,因为我正在从 zip redist 包安装 OpenJDK。
提前致谢:-)
java -XshowSettings:all
将显示所有可用值。 java -X
将显示可用选项。也就是说,您仍然需要进行一些翻译。看起来“合规级别”可能对应于 java.class.version
(主要)版本:
$ $(/usr/libexec/java_home -v 13)/bin/java -XshowSettings:all 2>&1 | grep java.class.version
java.class.version = 57.0
$ $(/usr/libexec/java_home -v 14)/bin/java -XshowSettings:all 2>&1 | grep java.class.version
java.class.version = 58.0
我使用 Java 14,我想为 Eclipse 编写一个自动配置脚本,以防我在我的机器上更新 Java。 Eclipse 使用以下行指定默认 Java VM:
<vmSettings defaultVM="57,org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType13,1597823290779" defaultVMConnector="">
如您所见,“defaultVM”属性中的第一个参数是合规级别,我不知道如何从 java 命令中获取此值(在本例中为“57”) . “java --version”只给我“14.0.2”,但这不是合规级别。关于如何在命令行上获得合规性级别还有其他一些参数吗?然后我会用 PowerShell 命令解析和评估它。其他命令如“javac”也可用,因为我正在从 zip redist 包安装 OpenJDK。
提前致谢:-)
java -XshowSettings:all
将显示所有可用值。 java -X
将显示可用选项。也就是说,您仍然需要进行一些翻译。看起来“合规级别”可能对应于 java.class.version
(主要)版本:
$ $(/usr/libexec/java_home -v 13)/bin/java -XshowSettings:all 2>&1 | grep java.class.version
java.class.version = 57.0
$ $(/usr/libexec/java_home -v 14)/bin/java -XshowSettings:all 2>&1 | grep java.class.version
java.class.version = 58.0