如何在 Ubuntu 上安装多个版本的 Java 时检查 Oracle Java 版本

2022-09-03 09:57:54

我在我的Ubuntu上安装了OpenJDKOracle Java。如果激活的java是OpenJDK,有没有办法在bash shell中检查Oracle java的版本?


答案 1

update-java-alternatives -l将列出通过替代系统安装的所有Java版本。

例如,在我的一个系统上,它将显示版本和路径:

java-1.6.0-openjdk-amd64 1061 /usr/lib/jvm/java-1.6.0-openjdk-amd64
java-7-oracle 1069 /usr/lib/jvm/java-7-oracle

如果你想要预言机,那么我想你可以做到:

update-java-alternatives -l | grep oracle | awk '{ print $1 }'

或者,这将查找所有 oracle 版本,并对列表中的每个版本发出命令:-version

update-java-alternatives -l | grep oracle | awk '{system($3"/bin/java -version")}'

输出可能如下所示:

java version "1.7.0_67"
Java(TM) SE Runtime Environment (build 1.7.0_67-b01)
Java HotSpot(TM) 64-Bit Server VM (build 24.65-b04, mixed mode)

更进一步的步骤是从命令中解析出java版本,然后简单地显示它:-version

(update-java-alternatives -l | grep oracle | awk '{system(""$3"/bin/java -version 2>&1 | grep \"java version\"")}') | awk -F\" '{print $2}'

之所以需要,是因为 Java 会将版本显示为标准错误。输出将如下所示(如果需要,可以很容易地将其分配给bash变量):2>&1

1.7.0_67

如果您有多个 oracle 实例,这将显示每个实例的版本。如果你想找到每个Java的所有版本,你可以简单地删除| grep oracle


答案 2

如果您使用的是openjdk java,那么您PC中的oracle Java只是一个文件夹。如果您没有使用它,则没有命令来检查其版本。

如果您曾经使用过oracle Java,那么它必须在您的java替代方案中,并且您可以找到具有以下特征的文件夹(通常带有版本名称):

update-alternatives --config java

如果它说像/usr/lib/jvm/jdk1.8.0_05/bin/java,那么你的电脑里有1.8。

如果您没有使用oracle Java,则只需检查下载的内容即可。

如果您只想查看您正在使用的版本:

java -version

希望它有帮助