代码之家  ›  专栏  ›  技术社区  ›  Gene Higgins

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

  •  3
  • Gene Higgins  · 技术社区  · 6 年前

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

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

    当我在 src 目录并尝试运行它 我得到了错误 Error:Cannot compile Groovy files: no Groovy library is defined for module 'new-groovy'

    因此,我在项目结构中检查了我的模块,groovy确实显示在依赖项中(这就是我的案例的不同之处 the previously accepted answer to this error ) enter image description here

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

    我尝试了不同的组合,将下拉列表中的值从compile更改为其他选项,选中和取消选中Export选项。在观看上述步骤的在线演示时,我看不到我的设置有任何不同。

    2 回复  |  直到 6 年前
        1
  •  3
  •   Gene Higgins    6 年前

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

        2
  •  1
  •   Matias Bjarland    6 年前

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

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

    executing groovy main class in IntelliJ

    值得检查的一点是您的跑步配置( Main Menu -> Run -> Edit Configurations... )你有你的主要模块 new-groovy 在“使用模块的类路径”下拉列表中选择。

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