【问题标题】:Intellij groovy: Error:Cannot compile Groovy files: no Groovy library is defined for module 'groovyTest'Intellij groovy:错误:无法编译 Groovy 文件:没有为模块“groovyTest”定义 Groovy 库
【发布时间】:2018-05-08 15:20:54
【问题描述】:

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

我使用 sdkman 安装了 Groovy: 当我创建一个新的 Groovy 项目时,它会识别出我已经安装了 Groovy

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

然后我在项目结构中检查我的模块,并且 groovy 确实出现在依赖项中(这是我的情况与 the previously accepted answer to this error 不同的地方)

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

我尝试了将下拉列表中的值从编译更改为其他选项的不同组合,选中和取消选中导出选项。在观看上述步骤的在线演示时,我看不出我的设置有什么不同。

【问题讨论】:

    标签: java intellij-idea groovy


    【解决方案1】:

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

    【讨论】:

      【解决方案2】:

      对于您的问题,我并没有真正的直接解决方案,但也许可以提供几件事来检查。

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

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

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

      【讨论】:

      • 很遗憾这不起作用,但谢谢。但是,回答了我自己的问题。
      • 确保指定的图书馆项目确实存在也很好。我意识到我的一个项目指向一个不再存在的库,并且它没有通知我这一事实。
      猜你喜欢
      • 2017-09-13
      • 2014-02-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-07-17
      • 1970-01-01
      • 1970-01-01
      • 2021-06-10
      相关资源
      最近更新 更多