我有一个 Maven 项目。我有一个读取文件并创建 pojo 的 java 类,然后项目使用这个 pojo。
我创建了一个 maven exec 插件来在验证阶段运行 java 类,因为我希望在编译发生时生成的 pojo 存在。
但问题在于验证阶段 maven exec 无法找到创建 pojo 的类,因为它尚未编译。
是否可以在 Maven 项目的验证阶段编译几个类
我有一个 Maven 项目。我有一个读取文件并创建 pojo 的 java 类,然后项目使用这个 pojo。
我创建了一个 maven exec 插件来在验证阶段运行 java 类,因为我希望在编译发生时生成的 pojo 存在。
但问题在于验证阶段 maven exec 无法找到创建 pojo 的类,因为它尚未编译。
是否可以在 Maven 项目的验证阶段编译几个类
你不能这样做。您将需要在其自己的项目中运行代码生成来生成代码。最好的办法是为此代码生成创建自己的 maven 插件。
如果您在“初始化”阶段编译代码生成器,然后在“生成源”阶段使用它生成代码,则可以在一个项目中执行此操作。
请参阅http://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html
但我可能会按照 bmargulies 的建议使用两个模块:一个项目用于您的代码生成器,一个项目用于您的代码。但是,不要对这些东西使用验证阶段;那是错误的地方。