【问题标题】:compile java classes maven exec plugin编译java类maven exec插件
【发布时间】:2012-10-03 18:12:40
【问题描述】:

我有一个 Maven 项目。我有一个读取文件并创建 pojo 的 java 类,然后项目使用这个 pojo。

我创建了一个 maven exec 插件来在验证阶段运行 java 类,因为我希望生成的 pojo 在编译发生时存在。

但问题在于验证阶段 maven exec 无法找到创建 pojo 的类,因为它尚未编译。

是否可以在 maven 项目的验证阶段编译几个类

【问题讨论】:

    标签: maven


    【解决方案1】:

    你不能这样做。您将需要在其自己的项目中运行代码生成来生成代码。最好的办法是为此代码生成创建自己的 maven 插件。

    【讨论】:

    • 谢谢,如果我将pojo生成作为另一个项目,我可以强制maven先运行生成项目,然后再运行我的实际项目。
    【解决方案2】:

    如果您在“初始化”阶段编译代码生成器,然后在“生成源”阶段使用它生成代码,则可以在一个项目中执行此操作。

    http://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html

    但我可能会按照 bmargulies 的建议使用两个模块:一个项目用于您的代码生成器,一个项目用于您的代码。但是,不要对这些东西使用验证阶段;那是错误的地方。

    【讨论】:

      猜你喜欢
      • 2020-04-07
      • 2011-08-10
      • 2018-05-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-03-07
      相关资源
      最近更新 更多