우분투 17.10에서 jdk8을 설치할 수 없습니다.

우분투 17.10에서 jdk8을 설치할 수 없습니다.

다음 코드를 사용하여 jdk 8을 설치하고 저장소를 추가했습니다.

sudo apt-add-repository ppa:webupd8team/java
sudo apt-get update

그 후 다음 명령을 사용하여 Java를 설치하려고 하면,

sudo apt-get install oracle-java8-installer

메시지를 받고 있는데 코드 응답은 다음과 같습니다.

Reading package lists... Done
Building dependency tree      
Reading state information... Done
oracle-java8-installer is already the newest version (8u151-1~webupd8~0).
0 upgraded, 0 newly installed, 0 to remove and 13 not upgraded.

답변1

oracle-java8-installer는 이미 최신 버전입니다.

패키지가 이미 설치되어 있기 때문에 동일한 패키지를 두 번 설치하려고 하면 나타나는 오류 메시지입니다. 이를 증명하려면 다음 명령을 실행하여 oracle-java8-installer가 설치되어 있는지 확인하십시오.

apt policy oracle-java8-installer  

oracle-java8-installer를 설치하려고 하면 다음 오류 메시지가 나타납니다.

다운로드가 완료되었습니다.
오래된 캐시 다운로드 삭제 중...
sha256sum 불일치 jdk-8u151-linux-x64.tar.gz
Oracle JDK 8이 설치되어 있지 않습니다.
dpkg: 패키지 oracle-java8-installer(--configure) 처리 중 오류가 발생했습니다.
하위 프로세스 설치 후 스크립트가 오류 종료 상태 1을 반환했습니다.
처리 중 오류가 발생했습니다: oracle-java8-installer
E: 하위 프로세스 /usr/bin/dpkg가 오류 코드(1)를 반환했습니다.

apt는 oracle-java8-installer가 설치되었지만 Java를 찾을 수 없다고 말합니다 . 따라서 jdk-8u151-linux-x64.tar.gz가 oracle에 의해 올바르게 다운로드되지 않았음을 의미하는 오류 java -version로 인해 올바르게 설치되지 않았을 것입니다. sha256sum mismatch-java8-설치 프로그램 스크립트.

oracle-java8-installer 스크립트가 제대로 작동하지 않는 다른 사람들과 동일한 문제가 발생할 수 있습니다.소프트웨어를 설치하거나 제거하려고 하면 오류가 발생합니다. 누구든지 도와주세요.그러니 공식을 방문하세요오라클 자바 9 웹사이트, 거기에서 jdk-9.0.1_linux-x64_bin.tar.gz를 다운로드하고 이 답변의 지침에 따라 설치하십시오.Sun/Oracle의 독점 Java JDK 6/7/8 또는 JRE를 어떻게 설치합니까?.

답변2

설치를 확인하는 또 다른 방법은 터미널에서 다음 명령을 실행하는 것입니다.

 dpkg-query -l oracle-java8-installer

당신은 이것을보아야합니다 :

Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name                               Version                Architecture           Description
+++-==================================-======================-======================-=========================================================================
ii  oracle-java8-installer             8u151-1~webupd8~0      all                    Oracle Java(TM) Development Kit (JDK) 8

두 번째는 i설치되었음을 의미합니다.

에서 man dpkg-query:

-l, --list [package-name-pattern...]
              List  packages  matching  given  pattern.  If  no package-name-pattern is given, list all packages in /var/lib/dpkg/status, excluding the ones
              marked as not-installed (i.e. those which have been previously purged). Normal shell wildcard characters are allowed in  package-name-pattern.
              Please  note  you  will  probably have to quote package-name-pattern to prevent the shell from performing filename expansion. For example this
              will list all package names starting with “libc6”:

                dpkg-query -l 'libc6*'

              The first three columns of the output show the desired action, the package status, and errors, in that order.

              Desired action:
                u = Unknown
                i = Install
                h = Hold
                r = Remove
                p = Purge

              Package status:
                n = Not-installed
                c = Config-files
                H = Half-installed
                U = Unpacked
                F = Half-configured
                W = Triggers-awaiting
                t = Triggers-pending
                i = Installed

              Error flags:
                <empty> = (none)
                R = Reinst-required

              An uppercase status or error letter indicates the package is likely to cause severe problems. Please refer to dpkg(1)  for  information  about
              the above states and flags.

              The  output  format  of this option is not configurable, but varies automatically to fit the terminal width. It is intended for human readers,
              and is not easily machine-readable. See -W (--show) and --showformat for a way to configure the output format.

관련 정보