web-dev-qa-db-ja.com

Mac上のJDKのパスは何ですか?

私は職場でのみMacを使用しています。Java_HOMEをJDKの正しいパスに設定する必要があります。 JDKをダウンロードしてインストールしたところ、どこにも見つからない。私は解決策としてインターネットを見ていましたが、Libraries/Javaというフォルダはありません。

301
filipp.kowalski

場所はJava 6(Apple提供)からJava 7以降(Oracle提供)に変更されました。これを見つける最も良い generic の方法は実行することです

/usr/libexec/Java_home

これは、デフォルトのJavaインストールへのパスと存在するすべての代替パスの両方を見つけるために、ネイティブにサポートされている方法です。

ヘルプテキスト(Java_home -h)をチェックアウトすれば、このコマンドを使ってOS X(Java_home --exec ...)上で確実にJavaプログラムを起動することができ、目的のJavaのバージョンとアーキテクチャを明示的に指定することもできます。見つからない場合はインストールするユーザー.

より歩行者向けのアプローチですが、コマンドJavaがどのJavaインストールに解決するかを具体的に追跡するのに役立つものは、次のようになります。

  1. 走る

    which Java
    
  2. それが/usr/bin/Javaのような何かをあなたに与えるなら、それは本当の場所へのシンボリックリンクです、

    ls -l `which Java`
    

    私のシステムでは、これは出力します

    /usr/bin/Java -> /Library/Java/JavaVirtualMachines/jdk1.7.0_25.jdk/Contents/Home/bin/Java
    

    そこからJavaのホームディレクトリを読むことができます。

  3. usr/bin/Javaが別のシンボリックリンクを指している場合、同じアプローチを再帰的に適用します。

    ls -l <whatever the /usr/bin/Java symlink points to>
    

重要なバリエーションは、AppleのJavaをインストールすることから始めて後でOracleをインストールする場合に得られる設定です。その場合、上記のステップ2があなたに与えるでしょう

/usr/bin/Java -> /System/Library/Frameworks/JavaVM.framework/Commands/Java

そして、その特定のJavaバイナリは、Java_HOME環境変数を調べることによって実際に呼び出すJavaコマンドを解決するスタブであり、それが設定されていないかJavaホームディレクトリを指していない場合は、Java_homeの呼び出しにフォールバックします。あなたのセットアップをデバッグするとき、これを覚えておくことは重要です。

608
Marko Topolnik

お使いのMacのバージョンは?これらのパスを試してください

 /System/Library/Frameworks/JavaVM.framework/ OR
 /usr/libexec/Java_home

このリンクは役に立つかもしれません - Mac OS Xで$ Java_HOME環境変数を設定するには -

32
Chetan Gole

JDKが次の場所にあるかどうかを確認してください。

ライブラリ/ Java/JavaVirtualMachines /または/システム/ライブラリ/ Java/JavaVirtualMachines /

以前に確認してくださいSO post: OSX 10.7 LionのJDK

26
ke cue

私のMacでは:

/System/Library/Frameworks/JavaVM.framework/Home/

ところで、あなたはwhich Javaを試しましたか?

5
gefei

/System/Library/Frameworks/JavaVM.framework/

Mountain Lionの/ Java 7パスも参照してください

5
kunal