Gradle IDEA插件无法在Mac上找到JDK

时间:2016-05-18 09:56:52

标签: java macos intellij-idea gradle sdkman

请注意:这不是重复的。我想要 Gradle的IDEA插件为我正确配置我的IntelliJ IDEA CE项目。我对任何涉及手动调整IntelliJ以找到我的JDK的解决方案不感兴趣。这是Gradle IDEA插件功能,可以并且应该可以使用。

如果您能找到另一个涉及正确获取Gradle IDEA插件以配置IntelliJ(在Mac上运行)以便找到JDK 8+的问题,请务必将其标记为欺骗并提供链接对那个问题。 否则,不要将其作为欺骗投票(不是!)。

Mac 10.9.5在这里。 Java 8是我的默认JRE / JDK,我刚刚通过sdkman安装了Groovy 2.4.6和Gradle 2.13。然后我安装了IntelliJ IDEA CE

在我的终端上,我创建了一个test-proj目录,然后在该目录中我发出了以下Gradle命令:

gradle init --type groovy-library

Gradle执行成功,给了我一个Groovy项目框架。然后我编辑了生成的build.gradle以包含IDEA插件:

apply plugin: 'idea'

然后我跑了:

gradle wrapper
./gradlew clean idea

这为我生成了Gradle Wrapper,然后我使用IDEA插件为我生成IntelliJ项目文件。然后我打开了我的品牌打击 - 新的IntelliJ IDE并转到Open我的test-proj

项目已打开,所有出现即可。但后来我开始编码并注意到String之类的JRE类没有显示为可解析的。所以我去了File >> Project Structure并看到了这个:

enter image description here

因此看来IntelliJ无法找到我的默认Java 8 JDK。我知道操作系统可以根据java -versionjavac -version的控制台输出找到两者 JRE和JDK。但是sdkman,Gradle或IntelliJ之间的某些东西阻止了IDE找到Java。有什么想法吗?

1 个答案:

答案 0 :(得分:0)

我遇到了同样的问题,虽然我通过删除.idea文件夹并通过指向我的build.gradle文件重新导入项目来运行它。在导入对话框中,我选择了.ipr结构,而不是使用“基于文件夹的结构”(默认)

的想法

执行gradle idea时,它会在项目根目录中生成一个配置项目的.ipr文件。 在我的情况下,jdk设置正确,我的模块已正确初始化。

使用.ipr文件的原因是,gradle idea插件无法使用基于目录的结构。另见:

因为我今天想到这一点,所以我不确定这有多好。或者基于目录和.ipr之间有什么区别(基于.ipr看起来更老?)。