【问题标题】:What exactly IntelliJ is doing when compiling project using Gradle?使用 Gradle 编译项目时,IntelliJ 到底在做什么?
【发布时间】:2018-02-27 08:04:59
【问题描述】:

IntelliJ IDEA 2016.3 添加了将构建/运行委托给 Gradle 的功能。

很明显,当委托选项打开时,Gradle 正在做所有事情。

我的问题是当这个选项关闭时 IntelliJ 到底在做什么?

我问这个是因为我的 Gradle 文件中有自定义代码,并且在 IntelliJ 中构建时似乎没有执行此代码。当我运行 gradlew build 时,一切正常。

【问题讨论】:

    标签: java gradle intellij-idea


    【解决方案1】:

    IntelliJ 有自己的构建系统,称为 JPS,它使用 IntelliJ IDEA 项目和 .iml 文件作为项目模型。当您使用 IntelliJ IDEA 的默认构建系统构建项目时,它不会执行 Maven 或 Gradle 文件中的任何代码;它使用自己的逻辑,只能通过向JPS编写插件来扩展。

    【讨论】:

    • 谢谢,这就解释了为什么没有执行自定义 Gradle 代码。
    • 有什么方法可以强制使用 Gradle 构建项目而不使用 JPS?
    • 委托选项正是这样做的。不幸的是,它目前是应用程序级别的设置;没有办法强制特定项目使用委托。有关相关问题,请参阅 youtrack.jetbrains.com/issue/IDEA-176794
    猜你喜欢
    • 2016-08-05
    • 1970-01-01
    • 1970-01-01
    • 2018-08-20
    • 2017-05-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多