web-dev-qa-db-ja.com

Android St​​udioのJDKを設定する方法は?

コンパイルできないdefaultAndroid 2.1の新しいプロジェクト because (?)JDKが使用したby Android St​​udioはJDK 1.7ですが、JDK 1.6でなければなりません。

変更するには、File->Project Structureに移動して、 JDK 1.6の場所を見つけます。

しかし、そのディレクトリを選択して押すと OK 次のエラーが表示されます。

有効なJDKディレクトリを選択してください

Please choose a valid JDK directory

スクリーンショットでわかるように、Java 6 OpenJDK 64ビットを新しいJDKとして設定しようとしています。

私に何ができる? Android St​​udioはOpenJDKと互換性がないので、代わりにOracle JDKを使用する必要がありますか?

42
Lucio

Android St​​udioはOpenJDKを認識しないため、 OracleJDKをインストール する必要があります。

次に、Oracle JDKへのパスを選択しましたが、うまくいきました!

5
Lucio

Android St​​udioでOpenJDK 7を使用していますが、正常に動作します。 (現時点では、Oracle JDKもインストールしていません。)

表示している画面(プロジェクト構造-> SKDロケーション)にJDKロケーション/usr/lib/jvm/Java-1.7.0-openjdk-AMD64のパスがあります。

24
Daniel

studio.shを調べることで、STUDIO_JDKJDK_HOME、またはJava_HOME環境変数のいずれかを設定して、JDKの場所を指すこともできます。


studio.shは、STUDIO_JDKJDK_HOME、およびJava_HOME環境変数を順番にチェックします。

if [ -n "$STUDIO_JDK" -a -x "$STUDIO_JDK/bin/Java" ]; then
  JDK="$STUDIO_JDK"
Elif [ -n "$JDK_HOME" -a -x "$JDK_HOME/bin/Java" ]; then
  JDK="$JDK_HOME"
Elif [ -n "$Java_HOME" -a -x "$Java_HOME/bin/Java" ]; then
  JDK="$Java_HOME"

したがって、必要に応じて設定するだけで、Studioがそれを取得します。

8
Nuno

これは私のために働いた:

  1. Javaディレクトリを見つけます。

    $ echo $Java_HOME
    /usr/lib/jvm/Java-7-Oracle
    
  2. Android St​​udioを開き、[ファイル]-> [プロジェクト構造]を開きます。

  3. SDKの場所の下からJavaディレクトリを上から
  4. 数秒待ってから、「0エラー0広告」を取得しました

動いた! :)

3
canorios

私が従ったステップ:

  1. ターミナルを開いてecho $Java_HOMEと入力します

  2. ターミナルに表示されるパスをコピーしました- Ctrl+Shift+C Ubuntuターミナルでコピー

  3. Android studio-プロジェクト構造-コピーしたパスを貼り付けました

  4. ソフトウェアが設定を認識して更新するのを待った

  5. これにより、無効なJdk設定の問題が解決されました

2
anand24

JDKとAndroid St​​udioを含む./binフォルダーがある場合、ターミナルでSTUDIO_JDKを実行する前にstudio.sh変数を設定できます。

STUDIO_JDK=./bin/jdk/ ./bin/Android-studio/bin/studio.sh
1
antoineMoPa

この問題を修正しました。 AS 2.1とJDK1.7を使用していますが、一部の機能についてはJDK1.8を更新する必要がありました。 Javaセットアップファイルをダウンロードします。たぶん私はjreだけをインストールし、jdkはインストールしませんでした。 ASは常に「有効なJDKディレクトリを選択してください」と警告します。だから私はあなたがJDKではなくJDKをインストールすべきだという私と同じ質問者の問題だと思う。

0
Songtao Lou

たとえば、jdkを別の場所にインストールしたのではないかと思います。 /usr/local/Java。私の場合も、スクリーンショットに示されているディレクトリに同じフォルダ名があります。

したがって、jdkが他の場所に存在するかどうかを確認してください。

0