【问题标题】:Using IntelliJ IDEA with Maven projects that use the "generate-sources" or "process-classes" lifecycle phases将 IntelliJ IDEA 与使用“generate-sources”或“process-classes”生命周期阶段的 Maven 项目一起使用
【发布时间】:2014-02-13 12:21:49
【问题描述】:

我正在开发一个 Maven 项目,该项目使用绑定到 generate-sourcesprocess-classes 生命周期阶段的插件。当项目导入到 IntelliJ IDEA 中时,IDEA 会根据 pom.xml 中的设置接管项目源代码的编译。但它没有实现任何其他生命周期阶段。在 IntelliJ IDEA 中构建项目时,如何执行这些其他生命周期阶段?

我知道我可以创建一个运行配置,专门运行带有process-classes 阶段的 Maven,然后将此运行配置设置为在其他配置之前运行,但这将构建所有模块,而不仅仅是该特定模块所需的模块运行配置,除了它比使用 IntelliJ IDEA 构建的时间长一个数量级。有没有更好的办法?

【问题讨论】:

  • 您是否尝试在“制作之前”设置阶段的执行(参见此处:jetbrains.com/idea/webhelp/…)?
  • @Tome 嗯,这看起来很有希望,但看起来我只能在选择生命周期阶段时做到这一点。比如我看不到相位generate-sources
  • 在 Maven 工具窗口中有一个选项不仅可以显示基本阶段,请参见此处:jetbrains.com/idea/webhelp/maven-projects-tool-window.html
  • 我在 androidannotations 为 android 应用程序生成源时遇到了类似的问题。不幸的是,我找不到任何有用的东西来满足您的要求
  • 它是自定义插件还是来自第三方?如果它类似于 Lombok,那么可能有一个相应的 IntelliJ 插件会自动执行您需要的阶段。或者你可以创建一个 IntelliJ 插件。

标签: maven intellij-idea


【解决方案1】:

不幸的是,IntelliJ 中的 maven 生命周期仅有两个选项是 Basic 和 Full(Cog -> 取消勾选 Show Basic Phases Only)。

如果您对它运行全套阶段感到满意,您可以只运行全套阶段,但最好的选择是将所有适当的阶段添加到运行配置中并自行运行。

【讨论】:

    猜你喜欢
    • 2014-12-25
    • 1970-01-01
    • 2017-01-31
    • 2012-05-13
    • 2015-11-20
    • 2013-05-05
    • 2016-08-05
    • 2021-01-25
    • 2017-05-21
    相关资源
    最近更新 更多