Java를 설치한 후 ANT를 설치하려고 합니다. 내 Java는 Sun Java에서 왔습니다.
pc19@pc19-H110:~$ java -version
java version "20.0.2" 2023-07-18
Java(TM) SE Runtime Environment (build 20.0.2+9-78)
Java HotSpot(TM) 64-Bit Server VM (build 20.0.2+9-78, mixed mode, sharing)
pc19@-H110:~$ echo $JAVA_HOME
/usr/lib/jvm/jdk-20/bin/java
pc19@pc19-H110:~$ whereis java
java: /usr/bin/java /usr/share/java /usr/lib/jvm/jdk-20/bin/java
pc19@-H110:~$ sudo apt-get install ant
pc19@-H110:~$ java -version
openjdk version "11.0.20.1" 2023-08-24
OpenJDK Runtime Environment (build 11.0.20.1+1-post-Ubuntu-0ubuntu120.04)
OpenJDK 64-Bit Server VM (build 11.0.20.1+1-post-Ubuntu-0ubuntu120.04, mixed mode, sharing)
ANT 설치를 사용하면 sudo apt get install ant
Sun Java 설치와 OpenJdk 설치를 덮어씁니다. 누구든지 해결 방법을 알고 있습니까?
Ant 설치에 Java가 포함되는 이유는 무엇입니까? 어떻게 막을 수 있나요?
답변1
패키지 관리자는 Oracle Java 설치를 인식하지 못합니다. 이 ant
패키지에는 JRE가 필요하며 또는 default-jre-headless
패키지 에 따라 다릅니다 java8-runtime-headless
. 따라서 ant
설치 중에 Ubuntu 20.04의 OpenJDK 11인 기본 JRE가 설치됩니다( apt install ant
이 내용은 나중에 설명하겠습니다). JRE 패키지가 재구성되고 디렉토리 /usr/bin/java
앞에 위치하므로 JRE 대신 시스템 JRE가 실행됩니다.jdk-20/bin
java
OpenJDK 11 설치를 방지하려면 가상 패키지를 생성하여 헤드리스 JRE가 설치되었음을 시스템에 알릴 수 있습니다 default-jre-headless
.설치된 패키지의 구현되지 않은 종속성을 무시하도록 만드는 방법은 무엇입니까?자세한 내용은 gstreamer0.10-plugins-good
로 바꾸십시오 default-jre-headless
.