Mac에 OpenJDK 설치(2019년 현재)

6606 단어 JenkinsMacJDKOpenJDK

개요



2019년 현재 이전과는 달리 JDK의 라이센스 형태가 업데이트되어 쉽게 JDK를 설치할 수 없게 되었습니다.
  • 「Oracle Java」의 라이센스가 변경 ~무상 이용은 개인의 개발・테스트・데모 목적에만

  • 그 때문에, 「Mac JDK Install」등으로 구그라고 환경 구축하는 입문자들은 매우 발달하기 쉬운 것이 아닐까 느끼고, 개인적으로도 매회 구구라고 공유하는 것이 수고해져 왔기 때문에 순서를 정리하는 것 한다.

    전제



    Mac 사용자가 JDK가 필요한 환경(Android 개발 및 Jenkins 등)을 준비

    방법



    여러가지 구그하면 Oracle로부터 JDK를 인스톨 하는 순서가 많이 보이지만, 2019년 현재에서는 상황이 바뀌어, Oracle로부터 JDK를 인스톨 하는 것보다도 OpenJDK를 인스톨 해 Java를 취급할 수 있도록(듯이) 대응하면 좋다.

    OpenJDK에 관해서는 Kishida (@nowokay)의 다음 기사를 참조하십시오.
  • JDK, Oracle JDK, OpenJDK, Java SE는 무엇입니까?

  • OpenJDK를 설치하는 방법



    큰 프레임 절차는 @spaciba_h_t 님의 다음 기사를 참고하시기 바랍니다.
  • mac에 openjdk11 설치

  • 버전 정보



    2019/11 현재 OpenJDK의 안정판 버전은 JDK 13 와 같습니다.



    Jenkins 정보



    스마트폰 앱을 개발하고 있는 엔지니어라면, MacMini/MacPro(휴지통판)등에 Jenkins를 넣어 CI 환경을 만드는 것은 드물지 않다고 생각합니다.
  • Unity에서 개발하는 게임의 단위 테스트를 CI 환경에서 운영하는 이야기
  • Jenkins를 통한 자동 빌드 환경 구축의 예
  • Merchari QA-SET 팀이 진행하는 테스트 자동화에 대한 질문 요약
  • CI 매니아에서 본 각종 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점을 서포트하고 있는 모양입니다.
  • OpenJDK JDK/JRE 8 - 64 bits
  • OpenJDK JDK/JRE 11 - 64 bits

  • 그 때문에 낡은 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 기사와 공식의 페이지가 참고가 됩니다.
  • MAC에 Jenkins 설치 (설치 방법)
  • Installing Jenkins #WAR file

  •  

    좋은 웹페이지 즐겨찾기