OS X 10.9에 Java 설치 (매버릭스)


321

Mac OS X v10.8 (Mountain Lion) 에 JDK 를 설치했습니다 . Mac OS X v10.9 (Mavericks)로 업그레이드 하고 터미널에서 실행 하면 다음과 같이 표시됩니다.java -version

설치를 요청하는 Java 런타임이 없습니다.

그런 다음 Mac에 JDK (1.7)를 수동으로 설치했습니다. 설치가 제대로 된 것 같습니다. 설치가 완료되면 터미널을 열고 입력 java -version했습니다. 또한 동일한 오류가 표시되었습니다.

설치를 요청하는 Java 런타임이 없습니다.

이 문제를 어떻게 해결할 수 있습니까?


1
터미널에 어떤 문제가 있는지 모르겠지만 이클립스를 실행하고 모든 프로젝트가 매버릭스에서 컴파일되고 있습니다.
Sunny

1
오래된 Java 런처는 jdk 1.6 만 지원하지만 mavericks에는 기본적으로 1.6이 설치되어 있지 않습니다.
Shawn

1
OP가 원래 필요로 함축했듯이 java 7이 아닌 java 6을 설치했습니다. 해당 솔루션에 도달하는 방법에 관심이 있습니다. 또한 터미널로부터의 피드백을 직접 다루는 '대체 (alternatives)'접근 방식이 있어야합니다.
Rondo

4
이것은 Java 6에는 좋지만 어떻게 Java 7을 작동시킬 수 있습니까?
190290000 루블 맨

2
: 자바 7 JRE를 설치하고 터미널에서 작업해야하는 잠재적 인 대답을 추가 stackoverflow.com/a/19582689/346286
아날로그

답변:


279

새로운 Mavericks (10.9)는 "설치 요청"을 보여 주지만 아무 일도 일어나지 않았습니다.

해결책은 OS X 용 공식 Java 패키지를 수동으로 다운로드하여 설치하는 것입니다. OS X 2013-005 용 Java.

업데이트 : 아래 의견에서 언급 했듯이이 동일한 패키지의 최신 버전이 있습니다.

OS X 용 Java 2014-001

OS X 2014-001 용 Java (위의 최종 기한 수정)

OS X 용 Java 2014-001에는 설치 개선 기능이 포함되어 있으며 OS X 용 Java의 모든 이전 버전을 대체합니다.이 패키지는 OS X 2013-005 용 Java에 포함 된 동일한 버전의 Java 6을 설치합니다.


저도 마찬가지입니다. 다른 선택은 Oracle에서 Java를 설치하는 것입니다. 어느 쪽이 더 낫다고 생각합니까? 오라클은 Java보다 Java를 더 빠르게 업데이트 한 것으로 보입니다.
Ngoc Pham

2
그러나 이것은 JDK 6을 제공합니다. 어떻게 JDK 6을 직접 사용할 수 있습니까?
Shawn

2
@Shawn Apple은 이미 설치된 JDK 7을 비활성화합니다. 그러나 java.com/en/download/faq/java_mac.xml 에서 FAQ를 다운로드하여 설치할 수 있지만 시도하지 않았습니다.
Guy

java6 및 java7을 모두 설치 한 경우 다음을 사용하여 쉘에서 v6을 선택할 수 있습니다. export JAVA_HOME = / System / Library / Java / JavaVirtualMachines / 1.6.0.jdk / Contents / Home
Jürgen Strobel

1
64 비트 OS에서 32 비트 Java를 사용하려는 이유는 무엇입니까? 64 비트 Java는 실제로 Mavericks에서 32 비트보다 빠릅니다.
MiB

196

Oracle의 최신 공식 JRE 만 설치하려는 경우이를 다운로드하여 설치 한 후 터미널에서 새 JAVA_HOME을 내보낼 수 있습니다.

이것이 최신 JRE를 설치하는 가장 깨끗한 방법입니다.

터미널에서 영구적 으로 가질 export JAVA_HOME줄을 추가 할 수 있습니다 ..bashrcjava

echo export JAVA_HOME=\"/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home\" >> ~/.bashrc

37
JAVA_HOME실제 VM 대신 브라우저 플러그인이 무엇인지 명확하게 정의하는 것이 약간 비린 것 같습니다. XCode 명령 행 도구를 설치하면 올바른 경로를 얻는 도구가 제공 /usr/libexec/java_home됩니다. developer.apple.com/library/mac/documentation/Darwin/Reference/…를 참조하십시오 .
Ilkka

8
@Ilkka-비린내 들리지만 실제로 Oracle JRE가 설치되는 곳입니다. 애플의 자바 (자바 6에서 멈춤)는 오라클과 잘
Orion Edwards

12
(불행하게도 주석을 추가하려면 여기에 필요한 평판이없는) 내 동료는 JAVA_HOME 설정해야한다는 추가하려고합니다export JAVA_HOME="/Library/Java/JavaVirtualMachines/jdk1.7.0_45.jdk/Contents/Home"
스테판 Windmüller

1
Oracle에서 jdk7u45를 설치했지만 내 bash 프로파일에서 여전히 수출 JAVA_HOME = $ (/ usr / libexec / java_home)을 사용합니다. jdk7u45는 자바 시스템 환경 설정 패널을 포함하여 매우 잘 작동합니다. 이제 jdk7u51로 업그레이드하고 있습니다.
MiB

2
export JAVA_HOME="/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home"이 작업을 수행하려면 ~ / .bashrc 또는 ~ / .bash_profile 대신 ~ / .profile 을 추가 해야했습니다.
LarS

64

JDK for Java 7을 다운로드하는 올바른 장소는 Java SE 다운로드 입니다.

위에서 알 수 있듯이 위에 제공된 다른 모든 링크는 JRE 또는 Java 6 다운로드를 제공합니다 ( IntelliJ IDEA 와 같은 Eclipse 또는 다른 IDE 를 실행 하려면 JRE가 아닌 JDK가 필요합니다 ).

IntelliJ IDEA와 관련하여 Java 클래스 6을 설치하라는 메시지가 표시됩니다. 이전 클래스 로더 또는 무언가가 필요한 것 같습니다. 대화 상자 팝업이 표시되면 지시에 따라 JDK 6을 올바른 위치에 설치하십시오.

그런 sudo ln -snf다음 위의 답변 에서 언급 한 작업을 수행해야합니다 .

sudo ln -nsf /Library/Java/JavaVirtualMachines/jdk1.7.0_45.jdk/Contents \
    /System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK

(위에서 답변이 다시 정렬되면 "위"라는 말이 의미가 없을 수도 있습니다.

또한 설치된 JAVA_HOME위치를 가리 키도록 설정했습니다 jdk_1.7.0_xx.jdk.

export JAVA_HOME="/Library/Java/JavaVirtualMachines/jdk1.7.0_45.jdk/Contents/Home"

그런 다음에 추가하십시오 PATH:

export PATH=$JAVA_HOME/bin:$PATH

대안은 애플의 미친 하이퍼 링크 미로로 뒤섞이는 것이지만, 솔직히 인생은 귀찮게하기에는 너무 짧다.


4
그 길을 얻는 더 좋은 방법은 다른 답변에 대한 내 의견을 참조하십시오 .
Ilkka

1
이 답변에는 더 많은 투표가 포함 sudo ln -snf되어 있으므로 위 답변에서 말하는 비트는 더 이상 정확하지 않습니다. 그것은 실제로 로널드 씨
Karthic Raghupathi

@KarthicRaghupathi 나는 의견을 완전히 이해하지 못하지만 (사용 this하고 that다소 혼란 스럽지만) / Sytem / Library / etc에서 Oracle이 JVM을 설치하는 실제 위치 (/ Library / etc) 로의 심볼릭 링크가 여전히 필요합니다 .) 또는 응용 프로그램이 Java 런타임을 찾을 수 없습니다.
Marco Massenzio

@Marco 이제 언급했듯이, 내 의견을 읽을 때 실제로는 의미가 없습니다. :) 명확히 할 수 있습니다. 당신의 대답에, 당신은 "나중에, 당신은 sudo ln -snf위의 대답에 언급 된 것을해야합니다 ;"라고 쓴다 . 답변은받은 투표 수에 따라 위 또는 아래로 이동합니다. 내 의도는 sudo ln -snf명령 이있는 대답에 대한 직접적인 참조 만 제공하는 것이 었습니다 .
Karthic Raghupathi

편집-그러나 실제로 재정렬 순서가 실제로 발생하는지 확실하지는 않습니다. NVM
Marco Massenzio

14

Oracle 에서 JDK 1.7을 다운로드하여 설치했습니다 . 콘솔에서 / 터미널 Java 7에서 정상적으로 작동합니다.

GUI를 통해 Java 프로그램 (예 : Eclipse )을 시작하면 다음과 같은 결과 가 나타납니다.

"Eclipse.app"을 열려면 Java SE 6 런타임이 필요합니다. 지금 설치 하시겠습니까?

이전 Java 버전을 설치하고 싶지 않기 때문에 다음 해결 방법을 사용했습니다.

sudo ln -nsf /Library/Java/JavaVirtualMachines/jdk1.7.0_45.jdk/Contents /System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK

monkehWorks의 크레딧 .


1
내가 사용할 필요가 ln -snf내가 가진 때문 Operation not permitted으로ln -sf
라스 Blumberg

Thx, 나는 대답을 편집하고 ln 명령에 -n 옵션을 추가했습니다.
Mr. Ronald

+1 정확히 내가 찾던 것. 감사! 설치 후 CLI가 JDK 7에 대한 참조를 가져오고있었습니다. 그러나 GUI 앱이 올바른 JDK를 가져 오려면이 단계가 필요했습니다.
Karthic Raghupathi

희망 이었지만 나에게는 효과가 없었습니다. Android Studio 0.3.2는 내가하지 않을 "Java 6 다운로드"를 주장합니다. Oracle Java 7 JDK가 설치되었습니다.
akauppi

64 비트 버전의 Eclipse가 필요합니다. 32 비트에는 Apple java가 필요합니다.
Thorbjørn Ravn Andersen

4

IntelliJ IDEA의 plist 파일에 Java 버전 1.6 *이 필요하기 때문에이 오류가 발생합니다. 이 문제를 해결하려면 1.6 *을 1.8 *로 바꾸십시오.

<key>JVMOptions</key>
<dict>
    <key>ClassPath</key>
      ...

    <key>JVMVersion</key>
    <string>1.8*</string>

    <key>MainClass</key>
    <string>com.intellij.idea.Main</string>
    <key>Properties</key>
<dict>

이것은 나를 위해 그것을했다. 내 문제는 osx 10.9로 업데이트했을 때 터미널에서 Java에 계속 액세스 할 수 있었고 다른 모든 항목 (일식 포함)이 정상적으로 작동했습니다. Android Studio에서만이 오류가 발생했습니다.
ucsunil

이것은 OS X 10.10.1에서 작동하지 않았으며 (JRE 8이 올바르게 설치되어 있어도) 버전 1.8을 사용할 수 없다고 불평합니다.
Emmanuel Bourg

JAVA_HOME이 설정되어 있는지 확인 했습니까?
Fabio Fumarola

3

OP는 Java 7이 필요하다는 것을 암시했습니다. 실제로 Java 6은 더 이상 '지원되지'않으므로 레거시 응용 프로그램 문제가없는 한이 시점에서 7을 설치해야합니다.

여기에서 얻을 수 있습니다 : http://java.com/en/download/mac_download.jsp?locale=ko


Apple의 현재 Java 6 배포가 지원되지 않는다고 가정해서는 안됩니다.
Graham Perrin

복잡한 문제를 애타게하지 않기 위해 'supported'라는 단어를 따옴표로 묶었습니다. 오라클은 6의 모든 지원에 대해 요금을 부과하며 해당 지원 요금은 논리적으로 Apple에도 적용됩니다. 따라서 애플은 계약없이 '자체적으로'존재한다. 그들은 하나가 있습니까 에서라도에 대한 패치를 통해 작업에 대한 계획을? 계약이 여전히 재분배를 허용합니까? Apple의 마지막 업데이트 이후 6 개의 Java 7 업데이트가 6 개로 출시되었습니다. 아마도 가정; 안전한 가정? 그런 것 같아.
Rondo

3

OS X 10.9에서 Java SDK를 업데이트 한 경험이 훨씬 쉬워졌습니다.

SE 다운로드Java SE Development Kit 8 에서 최신을 다운로드 하고 .dmg 파일을 설치했습니다. 그리고 java -version터미널에 입력 하면 다음이 표시되었습니다.

자바 버전 "1.8.0_11"

Java (TM) SE 런타임 환경 (빌드 1.8.0_11-b12)

Java HotSpot ™ 64 비트 서버 VM (빌드 25.11-b03, 혼합 모드)



1

OP에서 :

OS X 2013-005 용 Java에서 마침내 다시 설치했습니다. 이 문제를 해결했습니다.


1

이 오류는 Java가 제대로 설치되지 않았 음을 의미합니다.

1) brew cask install java (No need to install cask separately it comes with brew)

2) java -version

java version "1.8.0_131"
Java(TM) SE Runtime Environment (build 1.8.0_131-b11)

PS-맥주 통이란 무엇입니까? - 브루 - 술통은 브루을 확장하고 해결할 수있는 문제는 별도의 명령을 실행하는 번거 로움이 "...이 아이콘을 드래그를 설치하려면" 사용하여 응용 프로그램 설치 후 브루을 .

NB-이 문제는 Mavericks에만 국한된 것이 아니며 EL Capitan을 포함한 거의 모든 OS X를 얻게됩니다.


0

인 JDK 설치 할 필요가없는 개발자 키트 , 단지 JRE 는 IS 런타임 환경은 .


6
사실입니다. 그러나 Apple이 제공하는 것은 JDK이며 Oracle의 JRE는 인터넷 플러그인을위한 것입니다.이 java명령은 시스템 전체에 자동으로 연결되지 않으므로 "Java 런타임이 존재하지 않아 설치를 요청합니다"라는 메시지가 계속 표시됩니다. java -version터미널에 입력 할 때
Ngoc Pham
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.