Temurin-build: MacOS 용 λΉŒλ“œλŠ” Java λ„κ΅¬μ—μ„œ μΈμ‹λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

에 λ§Œλ“  2018λ…„ 05μ›” 12일  Β·  15μ½”λ©˜νŠΈ  Β·  좜처: adoptium/temurin-build

MacOSμ—μ„œ AdoptOpenJDK λΉŒλ“œλ₯Ό μ„€μΉ˜ν•˜λŠ” 지침을 λ”°λ₯΄λ©΄ μž‘λ™ν•˜λŠ” λͺ…λ Ή 쀄이 ν‘œμ‹œλ˜μ§€λ§Œ / usr / libexec / java_home은 디렉토리 ꡬ쑰와 λΆ€μ‘±μœΌλ‘œ 인해 μ„€μΉ˜λ₯Ό μΈμ‹ν•˜μ§€ λͺ»ν•©λ‹ˆλ‹€ (/ Library / Java / JavaVirtualMachines에 배치 된 κ²½μš°μ—λ„). Info.plist 파일의. http://jdk.java.net/10/ 의 Java 10 λΉŒλ“œμ—λŠ” μ˜¬λ°”λ₯Έ 정보가 ν¬ν•¨λ˜μ–΄ μžˆμ§€λ§Œ adaptopenjdk의 λΉŒλ“œμ—λŠ” 그렇지 μ•ŠμŠ΅λ‹ˆλ‹€. Eclipse 및 Intelij와 같은 IDE도 AdoptOpenJDK λ°”μ΄λ„ˆλ¦¬λ₯Ό μΈμ‹ν•˜μ§€ λͺ»ν•©λ‹ˆλ‹€.

이둜 인해 MacOSμ—μ„œ λͺ¨λ“  μ‹€μš©μ μΈ λͺ©μ μ„ μœ„ν•΄ acceptopenjdkλ₯Ό μ‚¬μš©ν•  수 μ—†μŠ΅λ‹ˆλ‹€.

bug documentation

κ°€μž₯ μœ μš©ν•œ λŒ“κΈ€

μ €λŠ” λ˜ν•œ μ†Œν”„νŠΈμ›¨μ–΄ μ—”μ§€λ‹ˆμ–΄μ΄λ©° μ—¬λŸ¬ JDKκ°€ μ„€μΉ˜λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€. jenv μ‚¬μš©ν•˜μ§€ μ•Šμ§€λ§Œ μ…Έμ˜ ν”„λ‘œν•„μ—μ„œ λ‹€μŒκ³Ό 같이 κΈ°λ³Έ μ£Όμš” JDK 버전을 μ„€μ •ν•©λ‹ˆλ‹€.

기본값은 Java 8μž…λ‹ˆλ‹€.

export JAVA_HOME=`/usr/libexec/java_home -v 1.8`

기본값은 JDK 11μž…λ‹ˆλ‹€.

export JAVA_HOME=`/usr/libexec/java_home -v 11`

예λ₯Ό 듀어이 값을 1.8 둜 μ„€μ •ν•˜λ©΄ κΈ°λ³Έ JDK 메이저 버전이 λ³€κ²½λ˜μ§€ μ•ŠμœΌλ―€λ‘œ JDK 11 μ„€μΉ˜λ₯Ό μΆ”κ°€ν•˜λŠ” 데 μ•„λ¬΄λŸ° λ¬Έμ œκ°€ μ—†μŠ΅λ‹ˆλ‹€.

λͺ¨λ“  15 λŒ“κΈ€

λ‹€μŒμ€ macOSκ°€ μ˜ˆμƒν•˜λŠ” 파일 κ΅¬μ‘°μž…λ‹ˆλ‹€.

➜  jdk1.8.0_121.jdk tree -v -L 3 --charset utf-8
.
└── Contents
    β”œβ”€β”€ Home
    β”‚   β”œβ”€β”€ ASSEMBLY_EXCEPTION
    β”‚   β”œβ”€β”€ COPYRIGHT
    β”‚   β”œβ”€β”€ LICENSE
    β”‚   β”œβ”€β”€ README.html
    β”‚   β”œβ”€β”€ THIRDPARTYLICENSEREADME-JAVAFX.txt
    β”‚   β”œβ”€β”€ THIRDPARTYLICENSEREADME.txt
    β”‚   β”œβ”€β”€ THIRD_PARTY_README
    β”‚   β”œβ”€β”€ bin
    β”‚   β”œβ”€β”€ db
    β”‚   β”œβ”€β”€ demo
    β”‚   β”œβ”€β”€ include
    β”‚   β”œβ”€β”€ javafx-src.zip
    β”‚   β”œβ”€β”€ jre
    β”‚   β”œβ”€β”€ lib
    β”‚   β”œβ”€β”€ man
    β”‚   β”œβ”€β”€ release
    β”‚   β”œβ”€β”€ sample
    β”‚   └── src.zip
    β”œβ”€β”€ Info.plist
    └── MacOS
        └── libjli.dylib -> ../Home/jre/lib/jli/libjli.dylib

11 directories, 12 files

이것은 μ„€μΉ˜ ν”„λ‘œκ·Έλž¨ ν”„λ‘œμ νŠΈμ— λŒ€ν•œ 것일 수 μžˆμ§€λ§Œ λ³Ό 수 μžˆμŠ΅λ‹ˆλ‹€.

http://www.oracle.com/technetwork/oracle-labs/program-languages/downloads/index.html μ—μ„œ μ‚¬μš©ν•  μˆ˜μžˆλŠ” JVMCI JDKλ₯Ό λΉŒλ“œ ν•  λ•Œ macOS λΉŒλ“œμ— λŒ€ν•œ Contents/Home 접두사λ₯Ό κ·ΈλŒ€λ‘œ μœ μ§€ν•©λ‹ˆλ‹€. 이 λ¬Έμ œμ—μ„œ μ‹œμž‘λœ 이유.

> tree -L 3 /Library/Java/JavaVirtualMachines/labsjdk1.8.0_172-jvmci-0.44
/Library/Java/JavaVirtualMachines/labsjdk1.8.0_172-jvmci-0.44
└── Contents
    β”œβ”€β”€ Home
    β”‚Β Β  β”œβ”€β”€ COPYRIGHT
    β”‚Β Β  β”œβ”€β”€ LICENSE
    β”‚Β Β  β”œβ”€β”€ README.html
    β”‚Β Β  β”œβ”€β”€ THIRDPARTYLICENSEREADME-JAVAFX.txt
    β”‚Β Β  β”œβ”€β”€ THIRDPARTYLICENSEREADME.txt
    β”‚Β Β  β”œβ”€β”€ bin
    β”‚Β Β  β”œβ”€β”€ db
    β”‚Β Β  β”œβ”€β”€ include
    β”‚Β Β  β”œβ”€β”€ javafx-src.zip
    β”‚Β Β  β”œβ”€β”€ jre
    β”‚Β Β  β”œβ”€β”€ lib
    β”‚Β Β  β”œβ”€β”€ man
    β”‚Β Β  β”œβ”€β”€ release
    β”‚Β Β  └── src.zip
    β”œβ”€β”€ Info.plist
    └── MacOS
        └── libjli.dylib -> ../Home/jre/lib/jli/libjli.dylib

9 directories, 10 files

@johnoliver μƒˆ λΉŒλ“œ 슀크립트λ₯Ό 톡해 μ„±κ³΅μ μœΌλ‘œ λΉŒλ“œ

@karianna λ‚˜λŠ” 우리 λΉŒλ“œκ°€μ΄ κ΅¬μ‘°μ—μ„œ λ°”μ΄λ„ˆλ¦¬λ₯Ό λ§Œλ“€μ–΄ λ‚΄μ•Όν•œλ‹€κ³  μƒκ°ν•˜μ§€ μ•ŠλŠ”λ‹€! MacOS 용 μ„€μΉ˜ ν”„λ‘œκ·Έλž¨μ˜μ΄ 뢀뢄을 λ§Œλ“€μ–΄ μ˜¬λ°”λ₯Έ ꡬ쑰λ₯Ό κ°–λ„λ‘ν•΄μ•Όν•˜μ§€λ§Œ tarball은 λ™μΌν•œ IMO둜 μœ μ§€λ˜μ–΄μ•Όν•©λ‹ˆλ‹€.

κ·Έλž˜λ„ μ„€μΉ˜ ν”„λ‘œκ·Έλž¨μ΄λ‚˜ λΉŒλ“œκ°€ μ˜¬λ°”λ₯Έ ꡬ쑰λ₯Ό μƒμ„±ν•˜λŠ”μ§€ ν™•μ‹€ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€ ...

λΉŒλ“œλŠ”μ΄ ꡬ쑰λ₯Ό μƒμ„±ν•˜λ„λ‘ μ„€μΉ˜ ν”„λ‘œκ·Έλž¨μ„ ꡬ성 ν•  수 μ—†μŠ΅λ‹ˆλ‹€.

λͺ¨λ‘κ°€ 이미 μ•Œκ³ μžˆλŠ” 것을 μ§€μ ν•˜λŠ”μ§€λŠ” λͺ¨λ₯΄κ² μ§€λ§Œ μ–΄μ¨Œλ“  ...

Macμ—μ„œ JDKλ₯Ό λΉŒλ“œ ν•  λ•Œ build/macosx-x86_64-normal-server-release/images/jdk/ μ•„λž˜μ˜ "standard linux tree"외에도 make images λŠ” build/macosx-x86_64-normal-server-release/images/jdk-bundle/jdk-11.jdk/ μ•„λž˜μ— ν•„μˆ˜ MacOS μΉœν™”μ  인 디렉토리 트리λ₯Ό λΉŒλ“œν•©λ‹ˆλ‹€.

$ tree -L 3 build/macosx-x86_64-normal-server-release/images/jdk-bundle/jdk-11.jdk
build/macosx-x86_64-normal-server-release/images/jdk-bundle/jdk-11.jdk
└── Contents
    β”œβ”€β”€ Home
    β”‚Β Β  β”œβ”€β”€ bin
    β”‚Β Β  β”œβ”€β”€ conf
    β”‚Β Β  β”œβ”€β”€ demo
    β”‚Β Β  β”œβ”€β”€ include
    β”‚Β Β  β”œβ”€β”€ jmods
    β”‚Β Β  β”œβ”€β”€ legal
    β”‚Β Β  β”œβ”€β”€ lib
    β”‚Β Β  β”œβ”€β”€ man
    β”‚Β Β  └── release
    β”œβ”€β”€ Info.plist
    └── MacOS
        └── libjli.dylib -> ../Home/lib/jli/libjli.dylib
$ tree -L 1 build/macosx-x86_64-normal-server-release/images/jdk
build/macosx-x86_64-normal-server-release/images/jdk
β”œβ”€β”€ bin
β”œβ”€β”€ conf
β”œβ”€β”€ demo
β”œβ”€β”€ include
β”œβ”€β”€ jmods
β”œβ”€β”€ legal
β”œβ”€β”€ lib
β”œβ”€β”€ man
└── release

λ”°λΌμ„œ "μ˜¬λ°”λ₯Έ"MacOS μ„€μΉ˜ μ•„μΉ΄μ΄λΈŒλŠ” 생성 ν•  λ•Œ λ‹€λ₯Έ μ†ŒμŠ€ 디렉토리λ₯Ό μ„ νƒν•˜κΈ° λ§Œν•˜λ©΄ 생성 될 μˆ˜μžˆλŠ” 것 κ°™μŠ΅λ‹ˆλ‹€.

λ‚˜λŠ” 이것에 λŒ€ν•΄ μ „ν˜€ ν˜Όλž€μŠ€λŸ¬μ›Œν–ˆμŠ΅λ‹ˆλ‹€.

λ‚˜λŠ” κΈ°λŒ€ν•˜κ³  μžˆμ—ˆλ‹€

  • 전체 Mac μ„€μΉ˜ ν”„λ‘œκ·Έλž¨ (.plist 파일 포함)
    λ˜λŠ”
  • ~ / java / ... λ“± μ•„λž˜μ— μˆ˜λ™μœΌλ‘œ 배치 ν•  κ°„λ‹¨ν•œ tar / archive

ν˜„μž¬μ΄ ν˜•μ‹μ˜ νŒŒμΌμ„ κ°€μ Έ μ™€μ„œ gzλ₯Ό 두 번 ν΄λ¦­ν•˜λ©΄ ν‰μ†Œμ²˜λŸΌ 압좕이 ν’€λ¦½λ‹ˆλ‹€. 그런 λ‹€μŒ 파일 νƒμƒ‰κΈ°μ—μ„œ μ—΄λ €κ³  μ‹œλ„ν•˜λ©΄ 터미널 ν”„λ‘¬ν”„νŠΈκ°€ λ‚˜νƒ€λ‚©λ‹ˆλ‹€. 더 이상은 μ—†μŠ΅λ‹ˆλ‹€. 아무것도 μ‹œμž‘λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

λ¬Όλ‘  jdkλ₯Ό 'jenv'둜 κ΅¬μ„±ν•˜κ±°λ‚˜ IntelliJ와 ν•¨κ»˜ μ‚¬μš©ν•˜λ„λ‘ ꡬ성 ν•  수 μžˆμŠ΅λ‹ˆλ‹€. Contents / Home을 κ·Έλƒ₯ μ§€λ‚˜μΉ˜μ§€ 만 'μ΄μƒν•œ'λŠλ‚Œμ΄ λ“­λ‹ˆλ‹€. 그것은 ν•˜λ‚˜λ„ λ‹€λ₯Έ 것도 μ•„λ‹™λ‹ˆλ‹€. κ·Έλƒ₯ λ‚΄ 생각 ....

@ planetf1 'macOS 방식'( /usr/libexec/java_home κ³Ό 같은 λ„κ΅¬μ—μ„œ μ˜ˆμƒ 됨)은 JDKλ₯Ό /Library/Java/JavaVirtualMachines μ•„λž˜μ— λ‘λŠ” 것이며 .plist νŒŒμΌμ΄μžˆλŠ” νŠΉμ • 디렉토리 ꡬ쑰가 ν•„μš”ν•©λ‹ˆλ‹€. 디렉토리 κ΅¬μ‘°λŠ” Content/ 둜 μ‹œμž‘ν•˜λŠ”λ°, Finderμ—μ„œλŠ” ν‘œμ‹œλ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. μ•„λ§ˆλ„ ν˜Όλž€ 슀러울 μˆ˜λ„ μžˆμ§€λ§Œ 거기에 μžˆμŠ΅λ‹ˆλ‹€. νŒ¨ν‚€μ§€ λ‚΄μš©μ„ 마우슀 였λ₯Έμͺ½ λ²„νŠΌμœΌλ‘œ ν΄λ¦­ν•˜κ³  μ—΄λ©΄ Finderμ—μ„œλ„ λ³Ό 수 μžˆμŠ΅λ‹ˆλ‹€.

https://adoptopenjdk.net/installation.html 이 JDKλ₯Ό /Library/Java/JavaVirtualMachines μ•„λž˜λ‘œ μ΄λ™ν•˜λŠ” 것이 쒋은 생각이라고 μ„€λͺ…ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. 그러면 $PATH λ₯Ό μˆ˜μ •ν•  ν•„μš”κ°€ μ—†μœΌλ©° /usr/bin/java μ—μ„œ 찾을 수 μžˆμœΌλ―€λ‘œ 쒋을 κ²ƒμž…λ‹ˆλ‹€.

λ§ˆμ§€λ§‰ μš”μ μ΄ λ‘λ“œλŸ¬μ§„λ‹€ κ³  μƒκ°ν•©λ‹ˆλ‹€ ... oracle jdk μ„€μΉ˜λŠ” κ·Έ 디렉토리에 슀슀둜 λ³΅μ‚¬ν•©λ‹ˆλ‹€. μ‚¬μš©μžλŠ” JDKλ₯Ό 'κ·Έλƒ₯ μ‚¬μš©'ν•˜κΈ° μœ„ν•΄ λ‹€λ₯Έ μž‘μ—…μ„ μˆ˜ν–‰ ν•  ν•„μš”κ°€ μ—†μŠ΅λ‹ˆλ‹€.

λ¬Έμ„œμ—μ„œ ... λ§Žμ€ μ‚¬λžŒλ“€μ΄ λ¬Έμ„œλ₯Ό 읽지 μ•ŠμœΌλ―€λ‘œ μ΅œμ†Œν•œ μ‹€μ œ μ„€μΉ˜μ‹œ κ²½κ³  λ‚˜ 정보 λ˜λŠ” 이것이 μžλ™ν™”λ˜μ§€ μ•Šμ€ 경우 맀우 λͺ…λ°±ν•œ 정보가 도움이 될 κ²ƒμž…λ‹ˆλ‹€.

λ˜ν•œ Java 앱을 κ΅¬μΆ•ν•˜λŠ” μ†Œν”„νŠΈμ›¨μ–΄ μ—”μ§€λ‹ˆμ–΄λ‘œμ„œ μ—¬λŸ¬ jdk둜 μž‘μ—…ν•΄μ•Όν•˜λ―€λ‘œ 기본적으둜 μ„€μΉ˜λ˜μ§€ μ•ŠλŠ”λ‹€λŠ” 사싀이 λ§ˆμŒμ— λ“­λ‹ˆλ‹€. μ €λŠ” 'jenv'λ₯Ό μ‚¬μš©ν•˜μ—¬ macOSμ—μ„œ κ΄€λ¦¬ν•©λ‹ˆλ‹€. 이 두 가지 μ ‘κ·Ό 방식 사이에 ν˜„μž¬ νŒ¨ν‚€μ§•μ΄ κ±Έλ¦° κ²ƒμ²˜λŸΌ λ³΄μž…λ‹ˆλ‹€. λ˜ν•œ 일뢀 μƒμš© 앱은 μƒˆ λ²„μ „μ˜ JDKμ—μ„œ μ‹€νŒ¨ν•˜λ―€λ‘œ 초보 μ‚¬μš©μžλΌλ„ 'κΈ°λ³Έ'버전을 μ—…λ°μ΄νŠΈν•˜λŠ” 것이 λ¬Έμ œκ°€ 될 수 μžˆμŠ΅λ‹ˆλ‹€.

μ €λŠ” λ˜ν•œ μ†Œν”„νŠΈμ›¨μ–΄ μ—”μ§€λ‹ˆμ–΄μ΄λ©° μ—¬λŸ¬ JDKκ°€ μ„€μΉ˜λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€. jenv μ‚¬μš©ν•˜μ§€ μ•Šμ§€λ§Œ μ…Έμ˜ ν”„λ‘œν•„μ—μ„œ λ‹€μŒκ³Ό 같이 κΈ°λ³Έ μ£Όμš” JDK 버전을 μ„€μ •ν•©λ‹ˆλ‹€.

기본값은 Java 8μž…λ‹ˆλ‹€.

export JAVA_HOME=`/usr/libexec/java_home -v 1.8`

기본값은 JDK 11μž…λ‹ˆλ‹€.

export JAVA_HOME=`/usr/libexec/java_home -v 11`

예λ₯Ό 듀어이 값을 1.8 둜 μ„€μ •ν•˜λ©΄ κΈ°λ³Έ JDK 메이저 버전이 λ³€κ²½λ˜μ§€ μ•ŠμœΌλ―€λ‘œ JDK 11 μ„€μΉ˜λ₯Ό μΆ”κ°€ν•˜λŠ” 데 μ•„λ¬΄λŸ° λ¬Έμ œκ°€ μ—†μŠ΅λ‹ˆλ‹€.

μ›λž˜ λ¬Έμ œλŠ” macOS 용 ν˜„μž¬ AdoptOpenJDK 8u192 및 11.0.1 릴리슀둜 ν•΄κ²°λ˜μ—ˆλ‹€κ³  μƒκ°ν•©λ‹ˆλ‹€.

이 νŽ˜μ΄μ§€κ°€ 도움이 λ˜μ—ˆλ‚˜μš”?
0 / 5 - 0 λ“±κΈ‰