Intellij Idea:导入Gradle项目 - 尚未定义JAVA_HOME

ben*_*box 334 java macos intellij-idea gradle

Intellij Idea 14.1.4 Mac OS X Yosemite 10.10.3及更高版本.

从IDE:

Import Project ->
(Chosen directory to import) ->
Import project from external model, Gradle ->
Gradle Home: /usr/local/Cellar/gradle/2.4/libexec
Gradle JVM: Use JAVA_HOME (not defined yet)
Run Code Online (Sandbox Code Playgroud)

来自shell:

echo $JAVA_HOME

/Library/Java/JavaVirtualMachines/jdk1.8.0_45.jdk/Contents/Home
Run Code Online (Sandbox Code Playgroud)

(在.profile中定义:export JAVA_HOME ="$(/ usr/libexec/java_home -v 1.8)"

我错过了什么 我已经检查了SO中的其他讨论,例如,Intellij JAVA_HOME变量,但没有Project SDK提示.

vis*_*ola 668

你需要为Java项目设置一个SDK,比如@rizzletang说,但你不需要创建一个新项目,你可以从Welcome屏幕上做到.

在右下角,选择Configure > Project Defaults > Project Structure: 在此输入图像描述

Project选中左侧的选项卡将显示您没有选择SDK:

在此输入图像描述

只需单击New...下拉列表右侧的按钮,然后将其指向JDK即可.之后,您可以返回导入屏幕,它应该只显示.

  • 一旦我从下拉列表中点击"JDK",我就会接受默认文件夹(Home).然后我接受了该目录的默认值(打开时).Intellij做了很多思考......它似乎有效.谢谢! (31认同)
  • 谢谢!!!真的很荒谬,开始使用intelliJ的第一个java/gradle项目非常复杂.我的意思是,如果intelliJ可以启动,它必须已经知道系统上安装了java的东西,为什么不默认添加这个java ...也许他们的一些开发人员会关心一天. (3认同)
  • IntelliJ用户必须按照他们强制您完成的点击次数付费.除了当然,他们正在与微软争夺年度最佳产品奖,因此没有其他理由可以将简单而重要的设置隐藏在5个默认设置之下. (2认同)

小智 35

如果您想通过intellij识别您的JAVA_HOME,您可以执行以下操作之一:

  • 从终端/ Applications/IntelliJ IDEA 14.app/Contents/MacOS启动你的intellij(这将选择你的bash env变量)
  • 通过执行以下命令添加login env变量: launchctl setenv JAVA_HOME "/Library/Java/JavaVirtualMachines/jdk1.8.0_60.jdk/Contents/Home"

正如其他人已经回答的那样,您可以通过在项目结构中设置SDK来忽略JAVA_HOME.


Ima*_*idi 5

对于Windows平台:

尝试从类似于以下的路径运行IntelliJ 的64位 exe版本.

请注意它在默认idea.exe旁边可用

"C:\ Program Files(x86)\ JetBrains\IntelliJ IDEA 15.0\bin\idea 64 .exe"

链接

  • @ Conrad.Dean,你是对的.但我在Windows中搜索相同的错误时最终会在这里,这可能会帮助一些具有类似情况的人.无论如何,谢谢你的评论 (2认同)