【问题标题】:Getting Gradle dependencies in IntelliJ IDEA using Gradle build使用 Gradle build 在 IntelliJ IDEA 中获取 Gradle 依赖项
【发布时间】:2015-02-25 23:14:22
【问题描述】:

Grade build,即使在 IntelliJ IDEA 内部,也不会将依赖项放入“External Libraries”文件夹中,因此这些类不会在编辑器中显示为建议,当我手动将它们添加为导入时,会进行编译错误。

如何让 IntelliJ 自动将依赖项合并到我的 build.gradle 文件中,例如:

compile 'com.google.code.gson:gson:1.7.2

【问题讨论】:

  • 将项目导入为 gradle 项目,确保您已启用 gradle 支持。

标签: java intellij-idea gradle build.gradle


【解决方案1】:

您需要将项目作为 Gradle 项目从 Idea 中导入。添加依赖项时,您需要打开 Gradle 窗口并执行刷新。

或者从 gradle 生成项目文件:

build.gradle:

apply plugin: 'idea'

然后运行:

$ gradle idea

如果您修改了依赖项,您将需要再次重新运行上述内容。

【讨论】:

  • apply plugin: 'idea' 无论如何都应该加上。
  • @PeterNiederwieser - 如果你正在从 Idea 导入,它有什么影响?
  • 它允许配置 IntelliJ 设置的各个方面(例如,使用哪个 JDK),导入时应该遵守这些。如果您的构建没有任何此类配置,则可能不需要应用插件(我从未尝试过)。
  • 谢谢,很高兴知道,我专门使用 gradle 为我生成项目文件,所以不需要这样做
  • 在生成项目文件时也是如此,除了在这种情况下应用插件绝对不是可选的。
【解决方案2】:

添加依赖后打开“Gradle”('View'->Tool Windows->Gradle)选项卡并点击“refresh”

添加示例(编译'io.reactivex:rxjava:1.1.0'):

如果 Idea 仍然无法解析依赖项,则可能是依赖项不在 mavenCentral() 存储库中,您需要将此依赖项所在的存储库添加到存储库中{}

【讨论】:

  • 但是好像不行。我添加了一个依赖并刷新了,但是当我尝试在 XML 或 Java 源代码中导入库时,IDEA 无法解析它。
  • 为我工作。值得庆幸的是,即使没有使用 idea gradle 插件。
  • @AuBee:我遇到了同样的问题。当我从命令行使用 Gradle 构建(仅一次)时,它就消失了。
  • @Thomas 是的。 CLI 总是有更多的控制权
  • @AuBee 如果 Idea 无法解析依赖项,则可能依赖项不在 mavenCentral() 存储库中,您还需要将存储库添加到存储库中{}
【解决方案3】:

将现有的 Gradle 项目(带有 build.gradle 的项目)导入 IntelliJ IDEA 时,当出现以下屏幕时,选择 从外部模型导入 -> Gradle .

或者,在下一个屏幕上选择 Auto Import 以自动导入新的依赖项。

【讨论】:

  • 其实这个答案解决了我的问题,应该是你在上面的实际正确答案之前做的第一件事。
  • 这是唯一有效且正确的解决方案。仅仅为了想法而在 gradle.properties 中添加一些东西是完全错误的。
  • 如果不对原始导入执行此步骤,我根本无法获得语法突出显示和自动完成功能。您也许可以在不重新导入的情况下修复它,但这要容易得多,至少在一个小项目上是这样。
  • @user219882 - 为什么在你的构建中添加一些东西“完全错误”?
  • @tddmonkey 因为用户选择使用的 IDE 与描述如何进行构建无关。
【解决方案4】:

Andrey 的上述帖子仍然适用于截至 2017 年第 3 季度的最新版 Intellij。所以请使用它。因为,构建项目和外部命令行 gradle 构建,不会将其添加到 Intellij 中的外部依赖项中......这听起来很疯狂。现在唯一的区别是 UI 看起来与上面的不同,但仍然使用相同的更新图标。我只是在这里给出一个答案,因为我无法粘贴新 UI 的快照……我本身不想要任何赞成票。安德烈在上面仍然给出了正确答案:

【讨论】:

    【解决方案5】:

    对于那些收到“无法解决依赖关系”错误的人:
    关闭“离线模式”
    ('查看'->工具窗口->Gradle)

    【讨论】:

      【解决方案6】:

      在我的情况下,我在刷新 gradle('View'->Tool Windows->Gradle)选项卡并点击“refresh”时遇到错误,没有此类 jetgradleplugin 类的属性 gradleversion。

      必须安装与 gradle 5+ 兼容的最新 intellij

      【讨论】:

        【解决方案7】:

        尝试了此线程中的所有内容,但在 IntelliJ 2020.2 中对我没有任何帮助。 This answer did the trick,但我必须设置正确的 JDK 路径,然后在 Gradle 设置中选择它(如下图所示):

        1. 为 Java SDK 设置正确的路径(在 File->Project Structure 下):

        1. 在 Gradle 窗口中,点击“Gradle 设置...”

        1. 从此处的 (1) 中选择正确的 SDK:

        之后,“重新加载所有 Gradle 项目”选项按预期下载了所有依赖项。

        干杯。

        【讨论】:

        • Intellij 2020.3 上的完美解决方案!
        【解决方案8】:

        我遇到了同样的错误,但没有其他任何工作。最后,我做了以下事情:

        1. 关闭 IntelliJ IDEA。
        2. 从我的项目文件夹中删除 .idea 目录。
        3. 重新打开 IntelliJ 并再次导入项目(作为 Gradle)。

        在上述之后,当我单击 gradle 刷新按钮时,我添加到 build.gradle 的任何新 gradle 依赖项都开始出现在 External Dependencies 部分中。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2018-03-06
          • 1970-01-01
          • 1970-01-01
          • 2013-12-23
          • 2017-12-23
          • 1970-01-01
          • 1970-01-01
          • 2019-11-09
          相关资源
          最近更新 更多