그래서 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}/*