Mac에 OpenJDK 설치(2019년 현재)
개요
2019년 현재 이전과는 달리 JDK의 라이센스 형태가 업데이트되어 쉽게 JDK를 설치할 수 없게 되었습니다.
그 때문에, 「Mac JDK Install」등으로 구그라고 환경 구축하는 입문자들은 매우 발달하기 쉬운 것이 아닐까 느끼고, 개인적으로도 매회 구구라고 공유하는 것이 수고해져 왔기 때문에 순서를 정리하는 것 한다.
전제
Mac 사용자가 JDK가 필요한 환경(Android 개발 및 Jenkins 등)을 준비
방법
여러가지 구그하면 Oracle로부터 JDK를 인스톨 하는 순서가 많이 보이지만, 2019년 현재에서는 상황이 바뀌어, Oracle로부터 JDK를 인스톨 하는 것보다도 OpenJDK를 인스톨 해 Java를 취급할 수 있도록(듯이) 대응하면 좋다.
OpenJDK에 관해서는 Kishida (@nowokay)의 다음 기사를 참조하십시오.
OpenJDK를 설치하는 방법
큰 프레임 절차는 @spaciba_h_t 님의 다음 기사를 참고하시기 바랍니다.
버전 정보
2019/11 현재 OpenJDK의 안정판 버전은
JDK 13
와 같습니다.Jenkins 정보
스마트폰 앱을 개발하고 있는 엔지니어라면, MacMini/MacPro(휴지통판)등에 Jenkins를 넣어 CI 환경을 만드는 것은 드물지 않다고 생각합니다.
그런 Jenkins를 Mac에 환경을 만들 때 OpenJDK 버전이
JDK 13
에서는 다음과 같이 오류가 발생합니다.$ /usr/libexec/java_home -V
Matching Java Virtual Machines (1):
13.0.1, x86_64: "OpenJDK 13.0.1" /Library/Java/JavaVirtualMachines/jdk-13.0.1.jdk/Contents/Home
/Library/Java/JavaVirtualMachines/jdk-13.0.1.jdk/Contents/Home
# .bash_profileの設定省略...
$ java --version
openjdk 13.0.1 2019-10-15
OpenJDK Runtime Environment (build 13.0.1+9)
OpenJDK 64-Bit Server VM (build 13.0.1+9, mixed mode, sharing)
$ java -jar jenkins.war
11月 19, 2019 3:13:40 午後 Main verifyJavaVersion
重大: Running with Java class version 57 which is not in the list of supported versions: [52, 55]. Run with the --enable-future-java flag to enable such behavior. See https://jenkins.io/redirect/java-support/
java.lang.UnsupportedClassVersionError: 57.0
at Main.verifyJavaVersion(Main.java:174)
at Main.main(Main.java:142)
Jenkins requires Java versions [8, 11] but you are running with Java 13 from /Library/Java/JavaVirtualMachines/jdk-13.0.1.jdk/Contents/Home
java.lang.UnsupportedClassVersionError: 57.0
at Main.verifyJavaVersion(Main.java:174)
at Main.main(Main.java:142)
2019년 현재의 Jenkins 공식 페이지의 Java requirements 에서는, OpenJDK의 버젼은 이하의 2점을 서포트하고 있는 모양입니다.
그 때문에 낡은 JDK 버젼을 인스톨 하려면 Archived OpenJDK General-Availability Releases 의 페이지로부터 특정의 버젼의 JDK 를 인스톨 해, 다시 환경 설정을 실시할 필요가 있습니다.
$ /usr/libexec/java_home -V
Matching Java Virtual Machines (2):
13.0.1, x86_64: "OpenJDK 13.0.1" /Library/Java/JavaVirtualMachines/jdk-13.0.1.jdk/Contents/Home
11.0.2, x86_64: "OpenJDK 11.0.2" /Library/Java/JavaVirtualMachines/jdk-11.0.2.jdk/Contents/Home
# .bash_profileの設定省略...
$ java -version
openjdk version "11.0.2" 2019-01-15
OpenJDK Runtime Environment 18.9 (build 11.0.2+9)
OpenJDK 64-Bit Server VM 18.9 (build 11.0.2+9, mixed mode)
$ java -jar jenkins.war
Running from: /Users/gremito/jenkins.war
webroot: $user.home/.jenkins
2019-11-19 05:51:56.703+0000 [id=1] INFO org.eclipse.jetty.util.log.Log#initialized: Logging initialized @506ms to org.eclipse.jetty.util.log.JavaUtilLog
...
덧붙여서 Mac에 Jenkins의 환경을 만드는 방법은, @t_n 씨의 아래의 Qiita 기사와 공식의 페이지가 참고가 됩니다.
Reference
이 문제에 관하여(Mac에 OpenJDK 설치(2019년 현재)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/gremito/items/ed4dcbc00f5f928e80e6텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)