Intellij groovy:错误:无法编译Groovy文件:没有为模块定义Groovy库' groovyTest'

时间:2018-05-08 15:20:54

标签: java intellij-idea groovy

我正在使用Intellij在Groovy中尝试Hello World。我使用的是最新的Intellij: Intellij "about" screen

我使用sdkman安装了Groovy: Groovy via sdkman 当我创建一个新的Groovy项目时,它认识到我安装了Groovy new Groovy project screen

当我在src目录中创建一个groovy文件并尝试运行它时 我收到错误Error:Cannot compile Groovy files: no Groovy library is defined for module 'new-groovy'

然后我在Project Structure中检查我的模块,并且groovy确实显示在依赖项中(这是我的案例与the previously accepted answer to this error不同的地方) enter image description here

Groovy也被列为一个库(我不知道为什么PHP被列为每个新项目的库) enter image description here

我尝试了将下拉列表中的值从编译更改为其他选项的不同组合,检查并取消选中“导出”选项。在观看上述步骤的在线演示时,我无法在设置中看到任何不同的内容。

2 个答案:

答案 0 :(得分:2)

唯一有效的方法是删除我所有的Intellij / Jetbrains全局配置文件。我进入~/Library/Preferences并删除了文件名中包含Jetbrains或Intellij的任何内容。在过去的两年里,我一直在重用几个版本的配置文件。它赶上了我。 Groovy文件现在将编译。

答案 1 :(得分:1)

我真的没有直接解决你的问题,但也许可以提供一些东西来检查。

我在IntelliJ 2017.3中使用Groovy模板创建了一个示例项目(我所拥有的,希望不是产生差异的原因)。然后我添加了一个HelloWorld类,并在intellij工具栏中点击“运行'Hello World'”播放按钮,结果如下面的屏幕所示。

executing groovy main class in IntelliJ

值得检查的是您的运行配置(Main Menu -> Run -> Edit Configurations...),并且您在“使用模块的类路径”下拉列表中选择了主模块new-groovy

另外,如果在项目视图(最后一个屏幕)中展开groovy节点,IntelliJ是否指向实际存在于磁盘上的文件?我问的原因有时你是通过sdkman进行更改并在IntelliJ中悬挂以前有效的sdk注册并且无效。