OS X 10.9(Mavericks)へのJavaのインストール


321

私がインストールされているJDKをのMac OS X v10.8(マウンテンライオン)。Mac OS X v10.9(Mavericks)にアップグレードjava -versionしてターミナルで実行すると、次のように表示されました。

Javaランタイムがありません。インストールを要求しています。

次に、MacにJDK(1.7)を手動でインストールしました。インストールはうまくいったようです。インストールが完了したら、ターミナルを開いてタイプしjava -versionました。それも同じエラーを示しました:

Javaランタイムがありません。インストールを要求しています。

この問題を解決するにはどうすればよいですか?


1
ターミナルにどのような問題があるのか​​わかりませんが、Eclipseを実行すると、すべてのプロジェクトがマーベリックスで正常にコンパイルされます
Sunny

1
古いjavaランチャーはjdk 1.6しかサポートしていないようですが、mavericksにはデフォルトで1.6がインストールされていません。
ショーン

1
OPはもともとそれらが必要であると暗示していたため、Java 7ではなくJava 6をインストールしました。私はその解決策がどのように達成されるかに興味があります。また、端末からのフィードバックに直接対処する「代替」の種類のアプローチが必要です。
ロンド

4
これはJava 6に最適ですが、Java 7をどのように動作させることができますか?
190290000ルーブルマン2013

2
Java 7 JREをインストールしてターミナルで機能させるための潜在的な回答を追加しました:stackoverflow.com/a/19582689/346286
analog

回答:


279

新しいMavericks(10.9)で「インストールの要求」が表示されましたが、何も起こりませんでした。

解決策は、OS Xの公式Javaパッケージを手動でダウンロードしてインストールすることでした。 OS X 2013-005のJava

更新:以下のコメントで述べられているように、この同じパッケージの新しいバージョンがあります:

OS X 2014-001のJava

Java for OS X 2014-001(上記のデッドラインの修正)

Java for OS X 2014-001にはインストールの改善が含まれており、Java for OS Xの以前のバージョンすべてに取って代わります。このパッケージは、Java for OS X 2013-005に含まれている同じバージョンのJava 6をインストールします。


わたしも。別の選択肢は、OracleからJavaをインストールすることです。どちらが良いと思いますか?OracleはJavaをAppleよりも早く更新したようです。
Ngoc Pham

2
しかし、これはJDK 6を提供します。JDK6をどのように直接使用できますか?
Shawn

2
@Shawn AppleはすでにインストールされているJDK 7を無効にします。しかし、いくつかのFAQを入手して、ここからインストールできます:java.com/en/download/faq/java_mac.xmlしかし、私はそれを試していませんでした。
2013年

あなたはJava6のとjava7の両方をインストールしている場合は、あなたがあなたのシェルでV6を選択することができますしてます。export JAVA_HOME = /システム/ライブラリ/ Javaの/ JavaVirtualMachines / 1.6.0.jdk /コンテンツ/ホーム
ユルゲン・ストローベル

1
64ビットOSで32ビットJavaを使用する理由は何ですか?Mavericksでは、64ビットJavaは実際には32ビットよりも高速です。
MiB 2014年

196

Oracleから最新の公式JREのみをインストールする場合は、そこから入手してインストールし、ターミナルで新しいJAVA_HOMEをエクスポートできます。

これが、最新のJREをインストールするために見つけた最もクリーンな方法です。

あなたは追加することができexport JAVA_HOME、あなたの中にラインを.bashrc持っているjavaあなたのターミナルに永続的に:

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

37
JAVA_HOME実際のVMの代わりにブラウザプラグインが何であるかを明確に定義するのは、少し怪しいように思えます。XCodeコマンドラインツールをインストールすると、正しいパスを取得するためのツールが表示されます/usr/libexec/java_homedeveloper.apple.com/library/mac/documentation/Darwin/Reference/…を参照してください。
Ilkka

8
@Ilkka-怪しげに聞こえますが、実際にはOracleのJREがインストールされます。AppleのJava(Java 6で停止)は、Oracleとうまく調和しない
Orion Edwards

12
私の同僚(残念ながら、コメントを追加するために必要な評判がここにありません)は、JAVA_HOME設定を次のように追加することを望んでいますexport JAVA_HOME="/Library/Java/JavaVirtualMachines/jdk1.7.0_45.jdk/Contents/Home"
StephanWindmüllerJan

1
Oracleからjdk7u45をインストールしましたが、bashプロファイルでexport JAVA_HOME = $(/ usr / libexec / java_home)を使用しています。jdk7u45は、Javaシステム設定パネルを含め、非常にうまく機能します。現在、jdk7u51にアップグレードしています。
MiB 2014年

2
export JAVA_HOME="/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home"この作業を行うには、〜/ .bashrcまたは〜/ .bash_profileの代わりに〜/ .profileに追加する必要がありました。
LarS 2014年

64

Java 7用のJDKをダウンロードする適切な場所は、Java SE Downloadsです。

上記で提供されている他のすべてのリンクは、私が知る限り、JREまたはJava 6のダウンロードを提供します(ちなみに、EclipseまたはIntelliJ IDEAなどの他のIDE を実行する場合は、JREではなく JDKが必要になります)。

IntelliJ IDEAについて-古いクラスローダーなどが必要なため、Java 6のインストールを求められます。ダイアログのポップアップが表示されたら、指示に従ってください。JDK6が適切な場所にインストールされます。

その後、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

代替策は、ハイパーリンクのAppleの非常識な迷路をあちこちに動かすことですが、正直なところ、人生は短すぎて気になりません。


4
そのパスを取得するためのおそらくより良い方法については、別の回答に対する私のコメントを参照しください。
Ilkkaは2013年

1
この回答にはより多くの投票があるため、sudo ln -snf上記の回答で述べているビットはもはや正確ではありません。それは実際にはロナルド氏
Karthic Raghupathi

@KarthicRaghupathi私はコメントを完全に理解しているとは確信していません(の使用thisthatやや混乱しています)が、/ Sytem / Library / etcの場所からOracleがJVMをインストールする実際の場所(/ Library / etc)へのシンボリックリンクがまだ必要です。)またはアプリケーションがJavaランタイムを見つけることができなくなります。
マルコマッセンツィオ

@マルコあなたが言ったところで、私が自分のコメントを読んだとき、それは本当にあまり意味がありません。:)明確にさせてください。あなたの答えには、「後で、sudo ln -snf上記の答えで述べられていることを行う必要があります」と書く。回答は、獲得した賛成票の数に基づいて上下に移動します。私の意図は、sudo ln -snf命令があった答えへの直接の参照のみを提供することでした。
Karthic Raghupathi 2013

編集済み-ただし、実際に並べ替えが実際に行われるかどうかはわかりません。賛成投票に関係なく、すべて並べ替えられたように見えます。NVM
Marco Massenzio

14

OracleからJDK 1.7をダウンロードしてインストールしました。コンソール/ ターミナルで Java 7は正常に動作します。

GUIを介して(Eclipseなどの)Javaプログラムを開始すると、次のようになります。

「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 permittedln -sf
ラースBlumbergの

それでは、回答を編集し、lnコマンドに-nオプションを追加しました。
ロナルド氏

+1まさに私が探していたもの。ありがとう!インストール後、CLIはJDK 7への参照を取得していました。ただし、GUIアプリで正しいJDKを取得するには、この手順が必要でした。
Karthic Raghupathi 2013

希望はありましたが、うまくいきませんでした。Android Studio 0.3.2は、「Java 6のダウンロード」を要求していますが、これは行いません。Oracle Java 7 JDKがインストールされている。
akauppi 2014年

64ビット版のEclipseが必要です。32ビットにはApple Javaが必要です。
するThorbjörnRavnアンデルセン

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にアクセスできることでした(Eclipseを含め、問題なく動作しました)。Android Studioのみがこのエラーの原因でした。
ucsunil 2014

これはOS X 10.10.1では機能しませんでした。JRE8が適切にインストールされている場合でも、バージョン1.8が使用できないというメッセージが表示されます。
Emmanuel Bourg

JAVA_HOMEが設定されているかどうかを確認しましたか?
Fabio Fumarola、2014

3

OPは、Java 7が必要であることを示唆していました。また、Java 6は実際には「サポート」されていないため、レガシーアプリに関する懸念がない限り、この時点でインストールするバージョンは7です。

こちらから入手できます:http : //java.com/en/download/mac_download.jsp?locale=en


Appleの現在のJava 6ディストリビューションがサポートされていないことを想定するべきではありません。
グラハムペリン2013年

「サポートされている」という言葉を引用符で囲んで、複雑な問題を引き出そうとしないようにしました。6のサポートに対するオラクルの料金...そしてそのサポート料金は論理的にAppleにも適用されます。したがって、Appleは契約なしで「単独で」います。彼らは1、持っていますか MacOSXのためのパッチスルー仕事に計画を?契約はまだ再配布を認めていますか?現在、Appleが最後に6にアップデートしてから、OracleからのJava 7のアップデートが2回ありました。おそらく、おそらく。安全な仮定?そうそう。
Rondo

3

OS X 10.9でJava SDKを更新する私の経験ははるかに簡単でした。

SEのダウンロードJava SE Development Kit 8から最新のをダウンロードし、.dmgファイルをインストールしました。そして、ターミナルに入力すると、以下が表示されました:java -version

Javaバージョン "1.8.0_11"

Java(TM)SEランタイム環境(ビルド1.8.0_11-b12)

Java HotSpot(TM)64ビットサーバーVM(ビルド25.11-b03、混合モード)




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-ビール樽とは何ですか?-自作-カスクは、自作を拡張し、追加のコマンドを実行するの手間を解消する「...ドラッグは、このアイコン、インストールするには」を使用したアプリケーションのインストール後に自作を

注意-この問題はMavericksに固有のものではなく、EL Capitanを含むほぼすべてのOS Xで発生します。


0

開発キットであるJDKをインストールする必要はなく、ランタイム環境であるJREをインストールするだけです


6
それは本当だ。ただし、Appleが提供するのはJDKであり、OracleのJREはインターネットプラグイン用にあるだけなので、javaコマンドはシステム全体に自動的にリンクされないため、「Javaランタイムが存在せず、インストールを要求しています」というメッセージが表示されます。java -versionターミナルに入力したとき。
Ngoc Pham 2013年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.