web-dev-qa-db-ja.com

エラー:compileSdkVersion Android-21はJDK 7でコンパイルする必要があります

コンパイル中にエラーError:compileSdkVersion Android-21 requires compiling with JDK 7が表示され、JDKの新しいバージョンが必要であると言われます。

OS X YosemiteでAndroid St​​udio v0.8.14を使用して実行しています

私がチェックしたもの:

  1. Javaバージョン:

Java version "1.8.0_25" Java(TM) SE Runtime Environment (build 1.8.0_25-b17) Java HotSpot(TM) 64-Bit Server VM (build 25.25-b02, mixed mode)

  1. JavaVirtualMachineフォルダー内では1.6.0.jdkフォルダーのみが表示され、他のフォルダーは見つかりません。

  2. JDk 8および7の再インストールを試みました!

Jvm 1.8のフォルダーの場所を見つけることができません。どのように修正できるかはわかりません。

106
Arjun Komath

この問題の正確な修正(MacのAndroid Studioユーザー)

すでにJava 8にアップグレードしている場合、JDKの場所はJava 6の場所/Library/Javaと比較して/System/Library/Java内にあることに注意してください。この問題を解決するには、右クリックして Project folder > Project Structure > SDK Location.

次に、JDKの場所を

/Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk/Contents/Home

別のJDKバージョン(Java 8以外)をインストールした場合は、最初にJava_homeスクリプトを使用してパスを見つけ、出力を使用します。ただ走れ、

/usr/libexec/Java_home 
224
Subin Sebastian

実際に解決策を見つけたばかりです-JDK 7は/Library/Java/JavaVirtualMachines/jdk1.7.0_71.jdk/Contents/Homeにあります。

それは私のために働いた。 JDK7がインストールされている場所のOracle Docs

29
gsueagle2008

私は解決策を得た。それは私にも起こりました、そして私はグーグルで多くを捜しました、しかし、私が得たすべてはヒントでした。ヒントがたくさん。そして、私は確実な解決策を思いつきました。

これは、コンピューターにJDK 7(またはそれ以上)がインストールされていないためです。 AS/ConfigurationのJDKディレクトリはJDK6を指している場合があります。 (そのシステム/ライブラリ/ ...)

あなたがする必要があるのは:

  1. 最新のJDKをダウンロードします。
  2. それをインストールします。
  3. ポイントAndroid St​​udio/Configure/Project Defaults/Project Structure /(JDK Location:)to /Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk /Contents/Home

太字の斜体で強調表示されたテキストは異なる場合があるため、参照することをお勧めします。お役に立てれば。グラドルAndroidスタジオを1日中めちゃくちゃにしました。ハッピーコーディング。

10
TheOnlyAnil

エリックとスビンの答えが組み合わさって私の問題を解決したことがわかりました。

つまり、Java JDKをEricの答えに設定する必要があります(JDK 7を使用している場合):

/ライブラリ/Java/JavaVirtualMachines/jdk1.7.0_71.jdk/Contents/Home。

私が犯した間違いは、jdk1.7.0_71.jdkディレクトリを選択しようとしただけで、「有効なJDKディレクトリを選択してください」というエラーメッセージが表示され続けることでした。

私は以前JDK 6で使用されていた形式に取り組んでいた:(-Contents/Homeへの完全なパスを与えたときに機能した。

Subinの答えは、JDKの場所を見つける方法を示しています。これは、何をしようとしているかによって異なる場合があります。

エリックとスビンに感謝します!

7
user2155964

私もこの問題を抱えています。これまでのところ修正を見つけることができないため、SDKの最大バージョンを20に変更することに頼りました。これはJDK6で動作します。

ファイルの場所については、Android studioの代わりに、/ System/Library/Java/JavaVirtualMachines/JDKバージョンを挿入/Contents/Homeにあると想定しています。

実際には、私のJDKは/ Library/Java/JavaVirtualMachines/JDKバージョンはこちら/Contents/Homeにインストールされます。

JDKがインストールされている実際のディレクトリでJDKを選択しようとすると、Androidスタジオは有効なJDKロケーションを選択する必要があると言います。今のところ修正を見つけることができないので、上で言ったように、SDKの最大バージョンを21ではなく20に変更することに頼りました。より多くの人がバグに苦しむまで、Googleはそれを修正します。または、実際の修正が機能しないための101の方法ではなく、オンラインで投稿されるまで。

これが今のところ役立つことを願っています、それは実際には解決策/答えではありませんが、当面は私のために働く回避策です。

3
Leccles1

このスレッドのソリューションは、Android St​​udio 1.4の同じエラーに対して有効ではありません。たとえば、設定メニューはなくなりました。以下は、Ubuntu 14.04で実行されているAndroid St​​udio 1.4のソリューションです。

Ubuntu 14.04以降およびAndroid St​​udio 1.4以降で解決するには、

ファイル->その他の設定->デフォルト設定->ビルド、実行、展開->コンパイラ-> Javaコンパイラ->プロジェクトバイトコードバージョン

このドロップダウンはデフォルトで空になります。

好みのJDKに設定します(以下のスクリーンキャップの場合)。

Android sdk screencap

出来上がり、プロジェクトがコンパイルされます。

0
barnhillec

1.6.0.jdkフォルダーしかない場合は、この link に移動し、jdk 1.7をダウンロードしてインストールします。次に、このパスでJavaフォルダーを見つけます

/Library/Java/JavaVirtualMachines/jdk1.7.0_71.jdk/Contents/Home
0
hash
  1. ダウンロード ここから 最新のJDK。
  2. コマンドラインツールを開きます。
  3. 次の行をコピーしてコマンドラインツールに貼り付け、Returnキーを押します。

/ usr/libexec/Java_home

  1. このコマンドの出力をコピーします。
  2. Androidプロジェクトに戻り、以下のようにナビゲートします

ファイル->プロジェクト構造-> JDKロケーション

編集(3つのドットのある正方形をクリック)JDKロケーション(画像の2番目)とそこにコマンドラインツールの出力を貼り付けます。

enter image description here MacBook Proを使用してこれらの手順を収集しました。

0
user2511630