【问题标题】:Red Hat Linux Enterprise 5.7 remove JavaRed Hat Linux Enterprise 5.7 移除 Java
【发布时间】:2014-11-03 09:59:56
【问题描述】:

我需要从 RHEL 5.7 中卸载 Java jdk1.6.0.27,然后安装另一个版本的 jre-7u40-linux-x64.rpm。 我做的第一件事是找出使用安装的当前 java 版本 java -version 命令,输出为 "java version "1.6.0_27""。 之后,我尝试使用以下命令检查 java 的预览版本:

rpm -qi jdk

输出为"package jdk is not installed"/usr/java 目录下安装包jre-7u40-linux-x64.rpm 后,有两个java 包。 /usr/java 上的 ls 命令的输出是: default jdk1.6.0_27 jre1.7.0_40 jre-7u40-linux-x64.rpm latest.

当我运行命令“alternatives --config java”时,输出是:

*+ 1   /usr/java/latest/bin/java

我是 RHEL 新手,需要一些帮助来了解情况。

总之,我需要一些帮助来删除预览版 jdk1.6.0.27 并安装 jre1.7.0_40。

提前感谢您的帮助! 最好的祝福, 克劳迪奥

【问题讨论】:

  • 我认为您缺少命令“alternatives --install”检查此问题stackoverflow.com/questions/20901442/…
  • 事实上,正如我之前所说,我已经安装了 jdk1.6.0_27。我运行命令 rpm –e jdk 来卸载它,然后我做了 rpm –ivh jdk-7u25-linux-x64.rpm 和替代品 --install /usr/bin/java java /usr/java/latest/bin/java 301 及之后的替代品 --config java.在和 java -version 返回旧版本 1.6.0_27。
  • /usr/java/latest 是符号链接吗?您可以删除它并为 1.7 安装的根目录创建一个新符号链接吗?
  • ok Alternatives --install 在你的问题中没有提到,我以为你没有这样做,无论如何,卸载不是什么大问题,因为你会将Java配置到新安装,这就是我想一想,所以专注于安装所需的 java 甚至从 .gz 或 tar 文件中提取,然后 --install 和 --config 它。
  • 两个命令 rpm –qi jdk 和 rpm –e jdk 输出为:错误:未安装包 jdk

标签: java rhel


【解决方案1】:

首先,找出你真正的 java 可执行文件。开始

which java

这会给你一些回应,例如:

/usr/bin/java

接下来,做

ls -l /usr/bin/java 

(或返回的任何内容)。

它可能会这样写:

/usr/bin/java -> /etc/alternatives/java

对箭头所指的地方做同样的事情,直到最后,当你在上面做ls -l时,没有箭头。

然后,对于该特定文件,使用

找出哪个 rpm 提供它
rpm -q -f <full path of the file you found>

它应该告诉你它属于哪个包,然后你可以卸载它。

但是,如果rpm 命令返回The file ... is not owned by...,那么您的Java 尚未使用rpm 安装。它可能是过去由某人手动安装的。 这使得卸载它变得更加困难。

【讨论】:

  • 感谢 RealSkeptic。当我运行它返回哪个 java 时:/usr/java/jdk1.6.0_27/bin/java。运行命令 ls -l /usr/java/jdk1.6.0_27/bin/java 后返回:
  • 没有箭头,这就是你应该使用rpm -q -f查询的文件。
  • 是的,行中没有箭头
  • 运行 rpm -q -f /usr/java/jdk1.6.0_27/bin/java 后,输出文件 /usr/java/jdk1.6.0_27/bin/java 不属于任何包
  • 但正如 Yazan 所说,哪个 java 返回 /usr/java/jdk1.6.0_27/bin/java 这就是我这样做的原因
【解决方案2】:

如果您还没有找到答案:

  • 把旧的 java 留在原处,别管它
  • 安装新版本:rpm -ivh /root/jdk-7u40-linux-x64.rpm
  • 停用旧的 java
  • 导出新版本

停用旧的java(注意在每一行之前输入主题标签,手动安装需要编辑配置文件,所以再编辑一次):

vi /etc/profile

#JAVA_HOME=/usr/java/jdk1.6.0_27
#export JAVA_HOME
#PATH=$JAVA_HOME/bin:$PATH
#export PATH

正在导出新版本(注意在旧条目之后的配置文件中添加新行):

export JAVA_HOME=/usr/java/latest
export JRE_HOME=$JAVA_HOME/jre
export J2RE_HOME=$JAVA_HOME/jre
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$J2RE_HOME/bin:$PATH

使用标准命令检查新版本以检查已安装的软件。 希望这适合您的需求。 只是想知道:您正在尝试为接受 BFBOX 做准备?只是好奇!如果您想了解更多信息,请给我发电子邮件,好吗?

【讨论】:

    猜你喜欢
    • 2016-11-30
    • 2023-03-20
    • 1970-01-01
    • 2021-07-10
    • 1970-01-01
    • 1970-01-01
    • 2012-11-03
    • 1970-01-01
    • 2013-10-26
    相关资源
    最近更新 更多