IntelliJ Build>重建项目调用maven?

时间:2015-04-04 20:03:15

标签: java maven intellij-idea

在IntelliJ 14.1中,为maven项目调用Build > Rebuild Project时会发生什么。

  • 是否调用mvn compile?
  • 它是否独立于maven做了什么?

我试图对此进行测试,当我点击Build > Rebuild Project时,我看不到任何控制台输出指示maven正在运行,如果我从maven项目视图中运行maven,我会得到maven输出。

那么IntelliJ Build > Rebuild项目与maven / gradle / ant等构建工具之间的关系究竟是什么?

1 个答案:

答案 0 :(得分:19)

不,IntelliJ IDEA make不会调用Maven。当您打开Maven或Gradle项目时,它会读取项目的设置并将其存储为其内部项目模型的一部分。调用Build时,它使用导入的设置使用自己的构建系统编译项目。 Rebuild Project保留现有的导入设置,删除所有.class文件和IntelliJ的增量编译缓存,并使用IntelliJ IDEA的构建系统执行项目的完整构建。

这样做的好处是IntelliJ IDEA构建系统支持非常细粒度的增量重建(例如,如果更改方法的签名,它将只重新编译那些实际调用该方法的类,而不是任何其他代码)。

请注意,您可以将IntelliJ IDEA配置为在主项目编译之前或之后运行Ant任务或Maven目标,因此如果您的构建执行非标准操作,您仍可以将其与IntelliJ IDEA构建系统一起使用