如果 Ubuntu 上安装了多个 Java 版本,如何检查 Oracle Java 版本

2024-01-07

我两者都有OpenJDK and 甲骨文Java安装在我的 Ubuntu 上。 如果激活的java是OpenJDK,有没有办法在bash shell中检查Oracle java的版本?


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

如果你想要 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}'

The 2>&1是必需的,因为 Java 会将版本显示为标准错误。输出看起来就像这样(如果您需要的话,可以很容易地分配给 bash 变量):

1.7.0_67

如果您有多个 Oracle 实例,这将显示每个实例的版本。如果您想查找每个 Java 的所有版本,您只需删除| grep oracle

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如果 Ubuntu 上安装了多个 Java 版本,如何检查 Oracle Java 版本 的相关文章

随机推荐

  • 组合列表和字典理解

    我有某种冗长的逻辑 我想用一些理解来压缩 本质上 我有一个正在读取的 dict 对象 其中有 16 个我关心的值 我通过以下理解获得了我想要的密钥 I d i for i in range 16 源字典看起来像这样 I0 0 1 5 2 I
  • .NET MVC Fire and Forget Method 也立即返回 View

    我正在寻找 Fire Forget 方法的最佳解决方案 并立即返回 View 据我所知 我是否设置了 Action 的返回类型Task
  • 将文本文件加载到 RichTextBox 的最快方法是什么?

    我使用 OpenFIleDialog 将文本文件加载到 RichTextBox 中 但是 当大量文本 例如大约 50 70 行的歌曲文本 并且我单击 打开 时 程序会挂起几秒钟 3 5 秒 正常吗 也许有一些更快的方法或组件来加载文本文件
  • 如何在bootstrap中设置datetimepicker的MinDate和maxDate属性

    我想在引导程序中为 datetimepicker 动态设置 minDate 和 maxDate 属性 请帮我解决这个问题 在这种情况下 在一个日期时间选择器中选择日期时 应将该选定日期设置为其他日期时间选择器的 minDate 在第二个日期
  • 分离的 pthread 和内存泄漏

    有人可以向我解释一下为什么这个简单的代码会泄漏内存吗 我相信 由于 pthread 是在分离状态下创建的 因此它们的资源应该在终止后立即释放 但事实并非如此 我的环境是Qt5 2 include
  • Visual Studio 2017 错误无法打开“X”进行写入 - 对路径的访问被拒绝

    抱歉 我似乎无法修复此错误 严重性代码 说明 项目文件行抑制状态 错误 CS2012 无法打开 C Users Usuario source repos WindowsFormsApp1 WindowsFormsApp1 obj Debug
  • docker本地注册表“exec:\”htpasswd \“:在$ PATH中找不到可执行文件”

    直到最近这还工作得很好 docker run entrypoint htpasswd registry 2 Bbn myuser mypwd gt my registry2 reg hub auth htpasswd 现在它出错了 dock
  • 从结果集中创建长字符串

    我在存储过程中的 MS SQL 中有一个结果集 假设它有一个 VARCHAR 列 但有许多行 我想创建一个包含所有这些值的逗号分隔字符串 有没有一种简单的方法可以做到这一点 或者我是否必须逐步遍历每个结果并手动构建字符串 最好我想在存储过程
  • 访问不同端口中的 spring security,以字符串“anonymousUser”形式获取主要数据

    我有一个应用程序在我的本地 8100 中运行 我的服务器端代码在它已实现的 8065 中执行Spring Security作为 Java 配置 当我从 8100 ionic 浏览器窗口输入登录服务器代码时 我得到的原则对象数据只有字符串作为
  • 您的 Ruby 版本是 2.3.0,但您的 Gemfile 指定为 2.1.2

    我正在尝试设置一个现有项目 跑步时bundle install 我收到以下错误 我已经尝试了许多可能的解决方案 但对我不起作用 我也运行了建议的命令 例如gem pristine bcrypt version 3 1 10但对我不起作用 b
  • sbt 任务类路径

    我正在处理 sbt 任务 我希望能够访问一些应用程序类和依赖项 具体来说 我想使用 scalaquery 生成数据库 DDL 有什么方法可以将这些依赖项添加到任务中 或者我可能需要为此创建一个插件 object ApplicationBui
  • 复制到本地主机后,Wordpress 总是重定向到 https

    当我将 WordPress 安装从服务器复制到本地网络服务器 MAMP 并尝试访问时localhost 8888 它总是将 http 重定向到 https 所以我总是得到一个ERR SSL PROTOCOL ERROR 我在任何地方都找不到
  • Ninject 在 appharbor 上启动应用程序时崩溃

    我在部署在 appharbor 上的 MVC 3 项目上使用 Ninject 我注意到应用程序启动时出现异常 看起来 Ninject 内部的某些内容是原因 但我找不到任何答案 所以请帮助我 将尝试在此处添加完整的异常 Server Erro
  • Openid 禁止错误

    在我能够正确安装它 打开 id 库 后 我在让它工作时遇到了一些问题 我正在使用打开 id 选择器 http jvance com pages JQueryOpenIDPlugin xhtml一个 jquery 插件 问题是 当我单击任何打
  • 升级到 ADT 20 后,键盘在 Intel x86 Android 模拟器上停止工作

    我的意思是我不能再从笔记本电脑键盘输入 Android 模拟器了 虚拟键盘和屏幕键盘工作正常 升级到工具版本 20 后 我遇到了同样的问题 我必须编辑 AVD 以添加一个选项 如下所示 从 Eclipse 转到 AVD 管理器 选择特定的
  • 通过索引变量访问 SML 元组

    问题很简单 如何在SML中使用索引变量访问元组 val index 5 val tuple1 1 2 3 4 5 6 7 8 9 10 val correctValue index tuple1 我希望有人能够提供帮助 提前致谢 不存在接受
  • 配置 Flask 开发服务器在网络上可见

    我不确定这是否是 Flask 特定的 但是当我在开发模式下运行应用程序时 http localhost 5000 我无法从网络上的其他机器访问它 使用http dev host ip 5000 例如 当 Rails 处于开发模式时 它可以正
  • 如何在 Android 上的片段中使用共享首选项?

    我有一个片段 我想将 Facebook ID 存储在共享首选项中 我无法在获取首选项函数中编写私有模式 我还想在另一个片段中访问这个共享首选项 我怎样才能这样做呢 这是我的代码 Session openActiveSession getAc
  • 使用键盘输入切换值以进行绘图

    我有矩阵中的数据集 我想在一组上绘图 然后使用键盘输入移动到另一组 这很可能是这样的 for t 1 N plot data t pause end 但我想及时向前和向后移动t 例如使用箭头 好的 可以这样做 direction input
  • 如果 Ubuntu 上安装了多个 Java 版本,如何检查 Oracle Java 版本

    我两者都有OpenJDK and 甲骨文Java安装在我的 Ubuntu 上 如果激活的java是OpenJDK 有没有办法在bash shell中检查Oracle java的版本 update java alternatives l将列出