そのため、CentOS 6システムにJava 8をインストールしました。
rpm -qa
生産する
jre1.8-1.8.0_161-fcs.x86_64
そして
java -version
生産する
java version "1.8.0_161"
Java(TM) SE Runtime Environment (build 1.8.0_161-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.161-b12, mixed mode)
しかし、私のビルドファイルが失敗し、次のように言いました。
build.xml:223: このビルドには 1.6.0_21 以外の Java バージョン 1.8 が必要です。
このコードでは:
<target name="check_versions"
depends="check_java_version">
<fail message="This build requires Java version ${java.version.required}, not ${java.version}."
unless="java.version.ok"/>
</target>
<target name="check_java_version">
<property name="java.version.required" value="1.8"/>
<condition property="java.version.ok">
<contains string="${java.version}"
substring="${java.version.required}"/>
</condition>
</target>
とにかく私は素朴なことをしました。 Java 8をインストールするには、当然、以前のバージョンを最初に削除する必要がありました。しかし、以前のJavaバージョンがどのようにインストールされたのか、どのように削除するのかわかりません。 rpm はインストールされた Java 6 パッケージを認識せず、yum も何も認識しません。たとえば、rpmやyumを使用して削除することはできません。 /home/products には存在しますが、内部ではどのようなアンインストール実行ファイルも見つかりません。
だから私は単にディレクトリ全体を無差別代入として削除しました(そしてrpmを使って8をインストールしました)。これで、Windowsレジストリに似たものがまだ存在しているようです。この問題をどのように解決できますか?
答え1
システムにJava 1.6バージョンがまだインストールされているようです。さらに、$JAVA_HOME
同じ環境変数が$JRE_HOME
まだ古いディレクトリに設定されている可能性があります。/usr/java/latest
以前のバージョンへのシンボリックリンクがあるかもしれません。
まず、以前のバージョンのインストールパスと環境変数を検索してみることをお勧めします。これを行うには、次のコマンドを使用できます。
sudo find / -name "java"
grep --color -ir "JAVA_HOME\|JRE_HOME" /{etc,opt,var}/*