Mac OS X 및 여러 Java 버전
MacOS에 추가 Java를 설치하려면 어떻게 해야 합니까?jdk8을 설치했는데 정상적으로 동작합니다.그러나 현재 개발 목적으로 jdk7 설치가 필요합니다.DMG 파일을 사용하여 이전 버전을 설치하려고 하면 새로운 버전의 Java가 이미 설치되어 있고 설치가 종료된다는 경고가 나타납니다.
/usr/libexec/java_home -verbose
Matching Java Virtual Machines (1):
1.8.0_20, x86_64: "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_20.jdk/Contents/Home
/Library/Java/JavaVirtualMachines/jdk1.8.0_20.jdk/Contents/Home
이것 외에 jdk7을 설치하는 방법은?
Mac에서 여러 Java 버전을 관리하는 가장 깨끗한 방법은 를 사용하는 것입니다.
그 안에Homebrew
: , "사용방법:
homebrew-cask
을jenv
된 Java 을
http://hanxue-it.blogspot.ch/2014/05/installing-java-8-managing-multiple.html 에서 볼 수 있듯이, 다음의 순서에 따릅니다.
- 홈브루를 설치하다
- 홈브루 젠브 설치
- 홈브루 캐스크를 설치하다
- cask를 사용하여 특정 Java 버전을 설치합니다(아래의 "homebrew-cask 버전" 단락 참조).
- jenv가 관리할 수 있도록 이 버전을 추가합니다.
- 버전이 jenv에 의해 올바르게 관리되고 있는지 확인합니다.
- 필요한 Java 버전별로 4~6단계를 반복합니다.
홈브루 캐스크 버전
다음을 사용하여 홈브루에 탭을 추가합니다.
brew tap homebrew/cask-versions
다음으로 사용 가능한 모든 버전을 확인할 수 있습니다.
brew search java
그런 다음 원하는 버전을 설치할 수 있습니다.
brew cask install java7
brew cask install java6
그리고 평상시처럼 젠브에 의해 관리되도록 추가합니다.
jenv add <javaVersionPathHere>
저는 이것이 가장 깔끔하고 간단한 방법이라고 생각합니다.
Mac OS X 10.6.7 Java Path Current JDK에서 설명한 바와 같이 주의해야 할 또 다른 중요한 사항은 다음과 같습니다.
다양한 유형의 JDK 또는 설치에 대해 다른 경로를 사용합니다.
있는 는, 인스톨 되어 있는 버전의 패스를 할 수 .
/usr/libexec/java_home -V
Java JDK가 Mac에 설치되어 있는지 확인하는 방법을 참조하십시오.Mac OS X Mavericks에서 다음과 같은 것을 발견했습니다.
디폴트: 1) JRE 디폴트:
/Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin/Contents/Home
: 2) Apple에서 다운로드한 JDK:
/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home/
: 3) Oracle에서 다운로드하다JDK:
/Library/Java/JavaVirtualMachines/jdk1.8.0_11.jdk/Contents/Home
자원.
- Mac에서 Java 8 JDK 삭제
- http://hanxue-it.blogspot.ch/2014/05/installing-java-8-managing-multiple.html
- http://sourabhbajaj.com/mac-setup/index.html
- http://brew.sh
- https://github.com/Homebrew/homebrew/tree/master/share/doc/homebrew#readme
- http://sourabhbajaj.com/mac-setup/Homebrew/README.html
- "http://https://github.com/Homebrew/homebrew/blob/master/share/doc/homebrew/brew-tap.md"에 대한 설명
- "http://https://github.com/Homebrew/homebrew-versions"에서는 Homebrew install forformation의 특정 버전에 대해 설명했습니다.
- https://github.com/caskroom/homebrew-cask
- "cask versions"는 "cask versions"와 마찬가지로 https://github.com/caskroom/homebrew-versions 및 https://github.com/caskroom/homebrew-cask/issues/9447를 참조하십시오.
- http://www.jenv.be
- https://github.com/gcuisinier/jenv
jdk8을 제거하고 jdk7을 설치한 후 jdk8을 다시 설치합니다.
이들 사이를 전환하는 방법(.profile)은 다음과 같습니다.
export JAVA_7_HOME=$(/usr/libexec/java_home -v1.7)
export JAVA_8_HOME=$(/usr/libexec/java_home -v1.8)
export JAVA_9_HOME=$(/usr/libexec/java_home -v9)
alias java7='export JAVA_HOME=$JAVA_7_HOME'
alias java8='export JAVA_HOME=$JAVA_8_HOME'
alias java9='export JAVA_HOME=$JAVA_9_HOME'
#default java8
export JAVA_HOME=$JAVA_8_HOME
다음 입력하시면 .java7
★★★★★★★★★★★★★★★★★」java8
이치노
(편집: Java 9에 대한 Dylans 개선을 추가하기 위해 업데이트됨)
MacOS Sierra 420용
이 가이드는 다양한 소스(상기 내용 및 기타 게시물)에서 작성되었으며 완벽하게 작동합니다.
0. 아직 설치하지 않은 경우 homebrew를 설치합니다.
https://brew.sh/ 를 참조해 주세요.
1. jenv 설치
brew install jenv
2. bash 프로파일에 jenv를 추가합니다.
if which jenv > /dev/null; then eval "$(jenv init -)"; fi
3. 경로에 jenv를 추가합니다.
export PATH="$HOME/.jenv/shims:$PATH"
4. "caskroom/versions"를 탭합니다.
참고: "Tap"은 brew가 설치할 수 있는 사용 가능한 저장소 목록을 brew의 기본 사용 가능한 저장소 목록 이상으로 확장합니다.
brew tap caskroom/versions
5. 최신 버전의 Java를 설치합니다.
brew cask install java
6. Java 6(또는 필요한 경우 7 또는 8)을 설치합니다.
brew cask install java6
#brew cask install java7
#brew cask install java8
Terminal을 닫고 재시작하여 설정된 새로운 ENV var를 볼 수 있습니다.
7. 설치 확인
" "Java" "Java" "Java" "Java" "Java" "Java" "Java" "Java" "Java" "Java" 에 설치됩니다./Library/Java/JavaVirtualMachines
번번봅봅봅봅봅
ls -la /Library/Java/JavaVirtualMachines
8. 각 경로를 한 번에 하나씩 jenv에 추가합니다.
버전 폴더에 "/Contents/Home"을 추가해야 합니다.경고: 시스템의 실제 경로를 사용하십시오...이것들은 단지 예시일 뿐이다.
jenv add /Library/Java/JavaVirtualMachines/1.6.0___EXAMPLE___/Contents/Home
jenv add /Library/Java/JavaVirtualMachines/jdk-9.0.1.jdk___EXAMPLE___/Contents/Home
9. jenv가 정상적으로 등록되었는지 확인합니다.
jenv versions
10. 사용할 Java 버전 설정(글로벌)
여기서 XX는 위의 버전 목록의 항목 중 하나와 일치합니다.
jenv global XX
Java 버전 확인
java -version
jenv 버전 확인
또한 현재 사용 중인 버전을 별표와 함께 표시해야 합니다.
jenv versions
다 했어요.
빠른 미래 참조
Java 버전을 변경하려면
...사용 가능한 Java 버전 목록 보기
jenv versions
...그러면 XX는 위의 목록과 일치합니다.
jenv global XX
SDKMAN!은 Mac OS에서 여러 버전의 Java, Gradle, Groovy, Kotlin 및 기타 JVM 도구를 사용할 수 있는 훌륭한 도구입니다.설치 및 사용 설명서는 메인 사이트에 명기되어 있습니다.
(소속은 없고, 유저만 만족하고 있습니다).
예를 들어 [Terminal]창에 다음과 같이 입력하면 사용 가능한 Java SDK 버전 목록이 나타납니다(간단하게 편집).
$ sdk list java
Available Java Versions
+ 9ea170
> + 8u131
7u141-zulu
서 ★★★★+
에 버전이 설치되어 있는 것을 나타냅니다. >
현재 되고 있는 버전을 .전을설 설치: :
$ sdk install java 7u141-zulu
이 터미널 창에서 버전을 사용하려면:
$ sdk use java 9ea170
먼저 여러 JAVA 버전이 설치되어 있는지 확인해야 합니다.새 터미널 창을 열고 다음을 입력합니다.
/usr/libexec/java_home -V
출력은 다음과 같습니다.
Matching Java Virtual Machines (2):
11.0.1, x86_64: "Java SE 11.0.1" /Library/Java/JavaVirtualMachines/jdk-11.0.1.jdk/Contents/Home
1.8.0_201, x86_64: "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_201.jdk/Contents/Home
2개의 JDK를 사용할 수 있습니다.전환이 필요한 Java 버전이 보이지 않으면 여기에서 해당 Java 버전을 다운로드하여 설치합니다(JDK 8은 1.8로 표시됨). 적절한 JDK를 설치한 후 이 단계를 반복합니다.
전환할 JDK 버전을 확인합니다.예를 들어 "11.0"과 "1.8"은 위의 예에서 사용할 수 있는 JDK 버전입니다.
원하는 버전으로 전환합니다.예를 들어 JDK 8로 전환하려면 다음 행을 입력합니다.
JAVA_'JAVA_' displicate =
/usr/libexec/java_home -v 1.8
11.0의 경우 "1.8"을 "11.0" 4로 전환합니다.터미널에 입력하여 JDK 버전을 확인합니다.
java -version
모든 단계를 올바르게 수행한 경우 JDK 버전은 마지막 단계에서 지정한 버전과 관련이 있어야 합니다. 5. (옵션)이 버전을 기본 JDK 버전으로 만들려면 터미널에서 다음을 입력합니다.
open ~/.bash_profile
그런 다음 3단계에서 입력한 터미널을 다음 파일에 추가합니다.
Java 버전 8로 전환
export JAVA_HOME=`/usr/libexec/java_home -v 1.8`
파일을 저장하고 닫습니다.
이 웹사이트에서 볼 수 있듯이 먼저 jEnv 설치부터 시작합시다.
터미널에서 실행
brew install https://raw.github.com/gcuisinier/jenv/homebrew/jenv.rb
bash 프로파일에 jEnv 추가
if which jenv > /dev/null; then eval "$(jenv init -)"; fi
처음 jEnv를 설치할 때 JDK가 연결되어 있지 않습니다.
예를 들어 JDK 8을 설치한 지 얼마 안 됐는데 jEnv가 이를 알지 못합니다.jEnv에서 Java 버전을 확인하려면
자바어(jre)
*
에 현재 선택된 버전을 나타냅니다. 및 와 달리 JDK를 할 수 .rvm "rbenv" "rbenv" "jEnv" JDK" "rDK" "rbenv" "rDK" "rBenv" "JDK" "rDK"오라클 웹 사이트에서 JDK를 수동으로 설치해야 합니다.Apple Web JDK 6 apple apple apple apple apple 。 하면 에 설치됩니다.
/System/Library/Java/JavaVirtualMachines/
Apple 웹사이트에서 Java 6을 설치하는 이유는 SUN이 MAC용 JDK 6을 개발하지 않았기 때문에 Apple이 자체 배포 버전을 작성/변경했기 때문입니다.마찬가지로 JDK7 및 JDK8을 설치합니다.
JDK를 jEnv에 추가합니다.
JDK 6:
jenv를 사용하여 설치된 Java 버전을 확인합니다.
이제 3가지 버전의 Java가 시스템에 탑재되었습니다.기본 버전을 설정하려면명령어를 사용합니다.
jenv local <jenv version>
예 – Jdk 1.6에서 IntelliJ를 시작하기를 원했습니다.
jenv local oracle64-1.6.0.65
Java 버전을 확인합니다.
Java 버전
바로 그거야.현재 여러 버전의 Java가 있으며 쉽게 전환할 수 있습니다.jEnv에는 Gradle, Ant, Maven 등의 래퍼와 JVM 옵션을 글로벌 또는 로컬로 설정하는 기능 등 다른 기능도 있습니다.상세한 것에 대하여는, 메뉴얼을 참조해 주세요.
최근에 Jabba라는 자바 버전 매니저를 찾았는데 사용법은 rvm(ruby), nvm(node), pyenv(python) 등 다른 언어의 버전 매니저와 매우 유사합니다.또한 크로스 플랫폼이기 때문에 Mac에서도 사용할 수 있습니다.
인스톨 후에, 인스톨 하는 모든 Java 버전을 저장하는 dir 를 ~/.jabba 에 작성합니다."Oracle JDK (기본값) / 서버 JRE, Zulu OpenJDK (0.3.0 이후), IBM SDK, Java Technology Edition (0.6.0 이후) 및 사용자 지정 URL에서 설치를 지원합니다."
기본 사용법은 Github에 기재되어 있습니다.시작하기 위한 간단한 요약:
curl -sL https://github.com/shyiko/jabba/raw/master/install.sh | bash && . ~/.jabba/jabba.sh
# install Oracle JDK
jabba install 1.8 # "jabba use 1.8" will be called automatically
jabba install 1.7 # "jabba use 1.7" will be called automatically
# list all installed JDK's
jabba ls
# switch to a different version of JDK
jabba use 1.8
Mac OS X 10.9.5를 사용하고 있습니다.이렇게 하면 애플리케이션 A를 실행하고 애플리케이션 B에 다른 버전을 사용하는 데 필요한 경우 시스템에서 여러 JDK/JRE를 관리할 수 있습니다.
온라인에서 도움을 받고 다음 스크립트를 만들었습니다.
#!bin/sh
function setjdk() {
if [ $# -ne 0 ]; then
removeFromPath '/Library/Java/JavaVirtualMachines/'
if [ -n "${JAVA_HOME+x}" ]; then
removeFromPath $JAVA_HOME
fi
export JAVA_HOME=/Library/Java/JavaVirtualMachines/$1/Contents/Home
export PATH=$JAVA_HOME/bin:$PATH
fi
}
function removeFromPath() {
export PATH=$(echo $PATH | sed -E -e "s;:$1;;" -e "s;$1:?;;")
}
#setjdk jdk1.8.0_60.jdk
setjdk jdk1.7.0_15.jdk
【프로파일】.프로파일.터미널을 열고 vi.profile을 입력하고 스크립트에 위의 스니펫을 추가하여 저장합니다. out out out를 .source .profile
단말기를 재부팅하지 않아도 프로파일스크립트가 실행됩니다. " " 라고 입력합니다.java -version
1.7로 하다 로 는, 1.8 의 를 달아 .setjdk jdk1.7.0_15.jdk
줄 바꿈을 풉니다.setjdk jdk1.8.0_60.jdk
출처를 밝히다다른 Java 버전이 필요한 2개의 다른 Maven 프로젝트를 컴파일해야 할 경우 이 메커니즘을 사용하여 JDK/JRE의 여러 버전을 관리합니다.
@Vegard(경량)와 같은 정신으로:
- Homebrew를 사용하여 원하는 JDK 설치
거를 붙입니다.
jdk
와 bash의.profile
jdk() { version=$1 export JAVA_HOME=$(/usr/libexec/java_home -v"$version"); java -version } export JAVA_HOME=$(/usr/libexec/java_home -v11); # Your default version
그 다음 jdk를 전환하려면
jdk 9 jdk 11 jdk 13
https://github.com/AdoptOpenJDK/homebrew-openjdk를 기반으로 합니다.
jenv를 사용하여 MAC에서 여러 Java 버전 관리
다음 명령을 사용하여 홈브루를 설치합니다.
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
jenv 설치 및 jenv 활성화
brew install jenv echo 'eval "$(jenv init -)"' >> ~/.bash_profile
탭 캐스크 개폐
brew tap homebrew/cask-versions
설치할 수 있는 사용 가능한 Java 버전 검색
brew search java
예를 들어 java6를 설치하려면 다음 명령을 사용합니다.
brew install cask java6
jenv에서 여러 버전의 Java 추가
jenv add /Library/Java/JavaVirtualMachines/jdk1.8.0_231.jdk/Contents/Home jenv add /Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
- : - like음음 note : - 。ln: /Users/<username>/.jenv/versions/oracle64-1.8.0.231: No such file or directory
나서 다음과 같이 -- 、 -- 、 -- 、 -
mkdir -p /Users/<username>/.jenv/versions/oracle64-1.8.0.231
jdk 추가 후 jenv 재해시
jenv rehash
java의 알려진 버전을 jenv에 나열합니다.
jenv versions
기본 버전 설정
jenv global oracle64-1.8.0.231
프로젝트의 Java 버전 변경
jenv local oracle64-1.6.0.65
set JAVA_Jenv와 같은 버전의 HOME
jenv exec bash echo $JAVA_HOME
Mac Sierra의 Jenv:
설치 후 작동하지 않으면 이 버그를 수정하여 Java 실행 파일을 경로에 추가합니다.
export PATH="$HOME/.jenv/shims:$PATH"
eval "$(jenv init -)"
대로 /, //bin으로 입니다.그 이유는 /bin 폴더는 홈페이지 설명대로 존재하지 않지만, 대신 /bin으로 shim 폴더가 사용되기 때문입니다.
- ~/.jenv가 있는지 확인합니다.
which java
/도서관/...를 인쇄할 수 있습니다.- jenv 글로벌 1.8
- jenv 쉘 1.8
결 event event event event event.which java
하다
/사용자/xxxx/.jenv/shims/java
제가 최근에 답변을 드렸는데 홈브루 대신 SDKMAN을 사용하는 것을 추천합니다.
SDKMAN을 사용하면 Mac에 다른 버전의 JAVA를 쉽게 설치하고 다른 버전으로 전환할 수 있습니다.
ANT, GRADLE, KOTLIN, MAVEN, SCALA 등에 SDKMAN을 사용할 수도 있습니다.
Mac에 버전을 설치하려면 sdk install java 15.0.0.j9-adpt 명령을 실행합니다.
다음은 bash를 위한 더 드라이 버전입니다(Vegard의 답변에 기반).
1.7 및 1.8을 원하는 버전으로 대체하면 'javaX'라는 별칭이 나타납니다. 여기서 'X'는 버전을 쉽게 전환할 수 있는 Java 버전(아래 스니펫의 7/8)입니다.
for version in 1.7 1.8; do
v="${version: -1}"
h=JAVA_"$v"_HOME
export "$h"=$(/usr/libexec/java_home -v $version)
alias "java$v"="export JAVA_HOME=\$$h"
done
OpenJDK의 최신 버전을 설치하려면 이 버전을 사용합니다.OpenJDK 14의 예:
brew info adoptopenjdk
brew tap adoptopenjdk/openjdk
brew cask install adoptopenjdk14
최신 정보에 대해서는, https://github.com/AdoptOpenJDK/homebrew-openjdk 를 참조해 주세요.
https://medium.com/@euedofia/fix-default-version-on-mapen-os-x-subscf5930078 링크의 절차를 따라 실행했는데 효과가 있었습니다.
cd /usr/local/Cellar/maven/3.5.4/bin/
nano mvn
--Update JAVA_HOME -> "${JAVA_HOME:-$(/usr/libexec/java_home)}"
mvn -version
Homebrew를 통해 Java를 설치하기 위한 새로운 명령어:
brew cask install adoptopenjdk/openjdk/adoptopenjdk8
brew cask install adoptopenjdk/openjdk/adoptopenjdk11
최신 명령어는 homebrew-openjdk repo를 참조하십시오.
Java 설치
Java는 Homebrew, Jabba, SDKMAN 또는 수동으로 설치할 수 있습니다.모든 명령어에 대한 자세한 내용은 이 답변을 참조하십시오.
Java 버전 전환*
Java 버전은 jenv Jabba, SDKMAN 또는 수동으로 전환할 수 있습니다.모든 스위칭명령어에 대한 자세한 내용은 여기를 참조하십시오.
최적의 솔루션
- Jabba는 여러 플랫폼에서 동작하도록 설계되어 있기 때문에 Windows에서도 동작하는 솔루션을 필요로 하는 경우에 매우 적합합니다.
- Homebrew를 사용하여 Java 버전을 다운로드하고 jenv를 사용하여 버전을 전환하면 좋은 워크플로우를 얻을 수 있습니다.jenv를 사용하면 머신의 임의의 디렉토리에 저장되어 있는 Java 버전을 쉽게 조작할 수 있으므로 기본값이 아닌 디렉토리에 Java를 저장하는 것이 좋습니다.
- SDKMAN을 사용하여 Java 및 스위치 버전을 다운로드하는 것도 좋은 방법입니다.
- 수동 전환은 불필요한 두통이기 때문에 피하는 것이 좋습니다.
Java 버전을 수동으로 전환하는 기능
Java 버전을 수동으로 전환하기 위한 Bash / ZSH 함수는 다음과 같습니다(OpenJDK 사용).
jdk() {
version=$1
export JAVA_HOME=$(/usr/libexec/java_home -v"$version");
java -version
}
Java 버전을 전환하기 위한 훌륭한 툴이 있기 때문에 수동으로 하는 것은 권장하지 않습니다.
다음은 brew에 의해 설치된 jEnv를 사용하여 https://medium.com/@chamikakasun/how-to-management-version-in-brew-e5421345f6d0의 훌륭한 튜토리얼입니다.
또는 brew Tap을 사용하여 homebrew-openjdk https://github.com/AdoptOpenJDK/homebrew-openjdk 관리 버전을 확인할 수 있습니다.
이 질문에는 이미 답변이 많다는 것을 알고 있습니다만, Temurin과 bash만을 사용하여 솔루션을 공유하고 싶습니다.
1. 미러 또는 패키지 매니저를 사용하여 Temurin 다운로드
$ brew install --cask temurin
기타 버전(Java 8 등)의 경우:
$ brew tap homebrew/cask-versions
$ brew install --cask temurin8
2. bash 스크립트를 bash 프로파일에 추가합니다.
, 펴보세요.~/.zshrc
★★★★★★★★★★★★★★★★★」~/.bash_profile
방법에 (사용 방법에 따라 다름)
다음 코드를 추가합니다.
set-jdk() {
jdkversion=$1
export JAVA_HOME=/Library/Java/JavaVirtualMachines/temurin-"$jdkversion".jdk/Contents/Home;
export PATH=$PATH:$JAVA_HOME/bin;
java -version
}
3. 단말기를 재부팅하여 Java 버전을 변경합니다.
$ set-jdk N
되어 있습니다.N은 Java 버전입니다.
★★$ set-jdk 8
88Java 8/1로 8인치
몇 가지 고려 사항:
- 버전을 사용한 됩니다.
set-jdk
- Java 버전을 글로벌하게 설정하지 않습니다.
- JAVA_는 다른 하여 HOME을 설정할 수 .
/Library/Java/JavaVirtualMachines/temurin-<version>.jdk/Contents/Home
(필요한 Java 버전의 를 변경합니다.이 JD-GUI의 예와 같이)
즐거운 시간 되세요.
언급URL : https://stackoverflow.com/questions/26252591/mac-os-x-and-multiple-java-versions
'programing' 카테고리의 다른 글
변수 이름은 C의 메모리에 어떻게 저장됩니까? (0) | 2022.07.04 |
---|---|
Vue.js 또는 Nuxt.js 일원화된 애플리케이션 구성 (0) | 2022.07.04 |
Vue Router에서 404 응답을 얻는 방법 (0) | 2022.07.04 |
변환 옵션에서 /node_modules/vue-jest 모듈을 찾을 수 없습니다. (0) | 2022.07.04 |
Vuex 다중 패싱 어레이 또는 기타 방법 (0) | 2022.07.04 |