如何将build.gradle导入IntelliJ

sme*_*eeb 0 scala intellij-idea gradle

注意:此处的完整源代码.

我使用Gradle Init插件创建了一个Scala库:

gradle init --type scala-library
Run Code Online (Sandbox Code Playgroud)

然后我修改它build.gradle以生成Gradle 2.13的包装器.然后我跑了:

gradle wrapper
Run Code Online (Sandbox Code Playgroud)

生成包装器.最后我跑了:

./gradlew clean idea
Run Code Online (Sandbox Code Playgroud)

我在IntelliJ社区中打开了这个项目.我修改了Library.scala(Gradle Init插件创建的)包含明显的Scala编译器错误,但注意到错误没有显示为红色下划线:

在此输入图像描述

然后我右键单击该src/main/scala目录,发现没有添加Scala源文件包的选项.或者任何JVM(.java等)文件:

在此输入图像描述

我认为Gradle Init插件存在缺陷(scala-library至少对于类型)或者Gradle IDEA插件存在缺陷.无论哪种方式,我想我在我的一个IntelliJ项目文件中遗漏了一些东西:

  • IML; 要么
  • 知识产权; 要么
  • IWS

任何想法我可以改变,以便IntelliJ显示编译器错误,以便我可以添加新的Scala源文件?

Cra*_*der 8

gradle idea建议不要使用命令生成IntelliJ IDEA项目文件,它会创建遗留格式项目文件,并且在大多数情况下项目将无法正常工作(它仅适用于基本Java项目).

这种生成IntelliJ IDEA项目的方法已弃用,您只需build.gradle在IntelliJ IDEA中打开文件(这与使用Import并指定构建文件位置相同).

将Gradle项目模型映射到IntelliJ IDEA项目模型非常复杂,并且由使用Gradle API的JetBrains开发人员维护和支持,而gradle ideaGradle开发人员添加了该模型,不再主动维护.

  • 即使它不被提及,也没有被提及,不是在用户指南上,而是在DSL文档上,而不是在JavaDoc上,它仍然是绝对需要的.简单地导入`build.gradle`文件只适用于没有其他要求的非常标准的项目.我们的项目永远不会在IDEA中正常工作,只需导入`build.gradle`(我知道,我试过),你没有机会定制 (4认同)