web-dev-qa-db-ja.com

IntelliJ Gradleプラグイン:提供されたjavaHomeが無効のようです

に似ている:
- Intellij 14提供されたjavaHomeは無効のようです
- Android Studio-指定されたjavaHomeは有効なフォルダーではありません

ただし、Java_HOMEに設定されているC:\Program Files\Java\jdk1.8.0_40変数を使用しようとしています

Intellijがインストールディレクトリ内でJDKを探している理由がわかりません。

Intellijの場合:

Executing external task 'bootRun'...
The supplied javaHome seems to be invalid. I cannot find the Java executable. Tried location: C:\Program Files (x86)\JetBrains\IntelliJ IDEA 14.1\jre\bin\Java.exe
External task execution finished 'bootRun'.

C:\>Java -version
Java version "1.8.0_40"
Java(TM) SE Runtime Environment (build 1.8.0_40-b25)
Java HotSpot(TM) 64-Bit Server VM (build 25.40-b25, mixed mode)

C:>env
...
Java_HOME=C:\Program Files\Java\jdk1.8.0_40
...
88
Eric Francis

IDEAには、32ビットと64ビットの2つのバージョンがあります。

Java_HOMEはJavaの64ビットバージョンなので、IDEA ...\IntelliJ\IntelliJ IDEA Community Edition 14.1.2\bin\idea64.exeの64ビットバージョンを実行する必要があります。

それ以外の場合は、32ビットJDKを提供するか、IDEA設定で動作を調整できます https://intellij-support.jetbrains.com/hc/en-us/articles/206544879-Selecting-the- JDK-version-the-IDE-will-run-under

75

私の場合、上記の答えはうまくいきませんでした。私に役立つのは次のとおりです。GradleJVMを実際のJDKを指すように変更する必要がありました。 Image showing IntelliJ Settings window

177
humazed

File > Project Structure > Project > Project SDKからJDKを手動で設定してから、再構築してみてください。

31
mushfek0001

これは、モジュール設定のProject SDKをJDKに設定することで修正できます(Module SDK(SDK)

12
user39950

JDKへの正確なパスを指定してbuild.gradleと同じディレクトリにgradle.propertiesファイルを配置することで、この問題を解決しました。

org.gradle.Java.home = C:/Dev/JDK

実際には正しい解決策ではありません。おそらくIDEで修正する必要があります。IDEAログには次のようなログが表示されます(インポート済みのプロジェクトのgradleタスクを実行するとき)。

INFO - s.plugins.gradle.GradleManager - Instructing gradle to use Java from C:/Dev/JDK

しかし、gradleモジュールをプロジェクトにインポートしようとすると、そのようなメッセージは表示されません。おそらく、IDEAは実際にはJDKではないバンドルされたJREにリンクを渡します。

8
4ndrew

私はこれを試してみましたが、完璧に機能しました。 SETTING-> SEARCH 'Gradle' --->に移動してGradle JVMを選択し、Use Java_HOME C:\ ProgramFiles\Java\JDK\1.8オプションを選択してください。

6
maheshmnj

問題は、Intellij IDEA自体にあります。 Intellijがインストールされているディレクトリに移動すると、上記のJava.exeを検索しているjreディレクトリが見つかります。しかし、ここでの問題は、ここにbinディレクトリが存在せず、代わりに別のjreディレクトリが利用可能であるということです。内側のjreディレクトリからすべてのコンテンツをコピーし、外側のjreディレクトリに配置します。

3
Pradyumna Swain

私はかなり長い間同じ問題に遭遇しましたが、いくつのフォーラムを見ても問題は解決しませんでした。

要するに、私のアンチウイルスがJava.exeファイルを隔離していることがわかりました。そのため、ウイルス対策ソフトを開いてJava.exeファイルを復元し、Androidスタジオを再起動することをお勧めします。

1
Haider Malik

UPDATEこの問題は14.1.3で修正されたと思います

関連するバグリンク:

とはいえ、@ Sergii Pechenizkyiの回答を使用して取得できました。ただし、この問題にはいくつかの異なる解決策があるようです。

1
Eric Francis

OSX 10.12.x、Intellij v16.3では、次のことを行う必要がありました。

  1. 〜/ Library/Preferences/IntelliJIdea2016.3
  2. Idea.jdkというファイルを作成します
  3. 以下を追加します。/Library/Java/JavaVirtualMachines/jdk1.8.0_65.jdk(またはインストールしたJDK

これは、jetbrainsサイトで見つかったIntellij v16で行わなければならなかった修正です。ある時点で削除する必要がありましたが、16.3へのアップグレード時に追加し直す必要がありました。 https://intellij-support.jetbrains.com/hc/en-us/articles/206544879-Selecting-the-JDK-version-the-IDE-will-run-under

1
dkochheiser

IntelliJ UEをv14.1.1から14.1.7にアップグレードするとうまくいきました。

0
user6718911

16.3の時点ではMacで動作していません。 SDKはプロジェクト設定で正しく設定され、GradleダイアログボックスではJDKを選択できなくなりました。唯一の解決策は、gradle.propertiesファイルを作成することでした。

0
user7369766

intelliJ 2018.1では、プロジェクトSDKがJDKではなくKotlinに設定されていたため、この問題に遭遇しました。そのため、Kotlinプロジェクトがありますが、SDKがJDKである場合にのみビルドされます。

0