java - 如何在 Maven 中指定某些后缀文件之间的依赖规则?

标签 java dependencies maven generated-code

我有一个 Java 程序可以为我的应用程序生成 Java 类。 基本上它接受一个类的简单规范并生成一个专门的 Java bean 的形式。我想将其集成到我的 Maven pom.xml 中 如果输入文件发生变化,Maven 会自动生成 在 Maven 的编译阶段之前新建 .java 文件。

我知道如何在 make 中简单地做到这一点,但我没有找到任何东西 在具有此功能的 Maven 文档中。

最佳答案

您没有提供有关代码生成过程的详细信息,但您可以简单地使用 exec-maven-plugin 调用代码生成器。 (参见示例部分)。惯例是在 ${project.build.directory}/generated-sources/<tool> 中生成源.然后使用 build-helper-plugin 添加生成的源及其 add-sources 魔力。绑定(bind) generate-sources 上的所有内容阶段。

我将在下面展示构建助手的内容:

<project>
  ...
  <build>
    <plugins>
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>build-helper-maven-plugin</artifactId>
        <executions>
          <execution>
            <id>add-mytool-sources</id>
            <phase>generate-sources</phase>
            <goals>
              <goal>add-source</goal>
            </goals>
            <configuration>
              <sources>
                <source>${project.build.directory}/generated-sources/mytool</source>
              </sources>
            </configuration>
          </execution>
        </executions>
      </plugin>
    </plugins>
  </build>
</project>

您还可以编写一个简单的插件来包装您的生成器。在这种情况下,请查看 Guide to generating sources .

PS:我可能漏掉了什么,我的回答和你的问题标题有点不匹配。

关于java - 如何在 Maven 中指定某些后缀文件之间的依赖规则?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2411932/

相关文章:

java - 有没有办法在 Junit 测试中使用自定义 TestNG 报告器?

java - 运行 java MainClasses 的工具,设计避免依赖陷阱

java - Eclipse 为类练习设置 Maven 项目时出错 : Check $M2_HOME environment variable and mvn script match

maven - maven-bundle-plugin 中的内部错误。嵌入错误 : Opening resource

java - 哪种查找重复整数的方法更有效?

java - Apache POI 读取 xlsx 输入流问题

java - Google Guice 配置错误(未绑定(bind)实现)

java - Intellij 模块依赖。没有发现类定义错误

java - Java 程序如何找到它的 Maven 包?

java - 使用 Fused Location API 和应用程序意外崩溃