업데이트 : 아래의 루트 권한없이 설치
문제를 해결할 수있는 (반 공식) 저장소가 이미있는 경우 우분투 시스템에 수동으로 패키지를 설치하지 않는 것이 좋습니다. 또한 (매우 산발적 인) 호환성 문제를 피하기 위해 Oracle JDK를 개발에 사용하십시오 (수년 전에 시도해 보았지만 지금은 확실히 더 낫습니다).
시스템에 webupd8 저장소를 추가하십시오 .
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
선호하는 jdk 버전을 설치합니다 (java-6에서 java-9 버전 사용 가능) :
sudo apt-get install oracle-java8-installer
openjdk 및 oracle 버전을 혼합하여 여러 버전의 jdk를 설치할 수도 있습니다. 그런 다음 update-java-alternatives 명령을 사용하여 설치된 버전간에 전환 할 수 있습니다 .
# list available jdk
update-java-alternatives --list
# use jdk7
sudo update-java-alternatives --set java-7-oracle
# use jdk8
sudo update-java-alternatives --set java-8-oracle
요구 사항
당신이 얻을 경우 add-apt-repository: command not found
반드시 가지고 software-properties-common
설치 :
sudo apt-get install software-properties-common
이전 버전의 Ubuntu를 사용하는 경우 :
sudo apt-get install python-software-properties
루트 권한없이 JDK 설치
대상 컴퓨터에 대한 관리자 권한이없는 경우 가장 간단한 방법은 sdkman
zulu 인증 openjdk를 설치하는 데 사용 하는 것입니다.
curl -s "https://get.sdkman.io" | bash
source "$HOME/.sdkman/bin/sdkman-init.sh"
sdk install java
참고 : sdkman은 기본 옵션은 아니지만 공식 Oracle JDK도 설치할 수 있습니다. 사용 가능한 버전보기 :
sdk ls java
다음을 사용하여 선택한 버전을 설치하십시오.
sdk install java <version>
예를 들면 :
sdk install java 9.0.1-oracle
명령 용어
sudo <command> [command_arguments]
: 수퍼 유저 권한으로 명령을 실행합니다.
add-apt-repository <PPA_id>
: Ubuntu (모든 Debian 파생 제품 및 일반적으로 모든 Linux 배포판과 마찬가지로)에는 패키지 종속성 및 업데이트와 같은 작업을 처리하는 패키지의 기본 저장소가 있습니다. Ubuntu에서는 일반적으로 시스템에서 사용할 수없는 패키지 (oracle jdk와 마찬가지로) 또는 사용 가능한 버전의 업데이트 된 버전 (예 : LTS의 LibreOffice 5는 이것을 통해서만 사용할 수 있음)을 포함하는 PPA (개인 패키지 아카이브)를 사용하여 주 저장소를 확장 할 수 있습니다. PPA ).
apt-get [install|update|upgrade|purge|...]
: 시스템의 모든 저장소 상태 를 조작하는 데 사용되는 ""명령 줄 패키지 처리기입니다 (설치 / 업데이트 / 업그레이드는 저장소 현재 상태의 변경으로 볼 수 있음).
우리의 경우 : 명령 sudo add-apt-repository ppa:webupd8team/java
을 사용하여 다음 저장소 업데이트가 webupd8 저장소에서도 패키지 정보를 검색해야 함을 시스템에 알립니다.
으로 sudo apt-get update
우리가 실제로 시스템 저장소 업데이트 (이 운영하는 수퍼 유저 권한이 필요합니다 우리 앞에 추가 그래서 sudo는 명령으로).
sudo apt-get install oracle-java8-installer
update-java-alternatives ( update-alternatives 의 특정 자바 버전 ) : Ubuntu에서 여러 패키지가 동일한 기능을 제공합니다 (인터넷 검색, 메일 컴파일, 텍스트 파일 편집 또는 java / javac 실행 파일 제공 ...). 시스템이 특정 작업에 대해 사용자 즐겨 찾기 도구를 선택할 수 있도록하기 위해 아래의 심볼릭 링크 를 사용하는 메커니즘 /etc/alternatives/
이 사용됩니다. 위에 표시된대로 jdk를 업데이트하고 (Java 7과 Java 8간에 전환)이 명령의 출력이 어떻게 변경되는지 확인합니다.
ls -l /etc/alternatives/java*
우리의 경우 : sudo update-java-alternatives --set java-8-oracle
java-8-oracle 실행 파일을 가리 키도록 / etc / alternatives 아래의 심볼릭 링크를 업데이트합니다.
추가 사항 :
man <command>
: man을 사용하여 (거의) 모든 쉘 명령과 옵션에 대해 잘 작성되고 자세한 도움말을 읽으십시오 (이 작은 답변에서 언급 한 모든 명령에는 man 페이지가 있습니다. try man update-java-alternatives
).
apt-cache search <search_key>
: 제공된 search_key와 관련된 패키지를 검색하기 위해 APT 캐시를 쿼리합니다 (패키지 이름 또는 패키지 설명의 일부 단어 일 수 있음).
apt-cache show <package>
: 특정 패키지 (패키지 버전, 설치 여부, 설명)에 대한 APT 정보를 제공합니다.