Maven:在项目之间共享源

2024-05-05

我有两个项目,它们是一个共同父项目的子项目。还有一个生成器项目和生成器对应的maven插件项目。此外,两个子项目都使用相同的输入文件,该文件用于代码生成:

parent: pom
  child1: jar
    src/main/generator/input.gen
  child2: jar
    src/main/generator/input.gen
  generator: jar
  generator-plugin: maven-plugin

生成器插件是一个内部制作的 Maven 插件:

@Mojo(name = "generate", defaultPhase = LifecyclePhase.GENERATE_SOURCES, threadSafe = true)
public class GeneratorPlugin extends AbstractMojo {
    @Parameter(required = true, readonly = true, defaultValue = "${project}")
    private MavenProject project;
    @Parameter(required = true, defaultValue = "${project.basedir}/src/main/generator/input.gen")
    private File         input;

   ...

}

目前,这input.gen重复于src/main/generator/input.gen两者的child1 and child2。这是个问题。我只想拥有一个版本input.gen.

我应该如何构建我的项目以及如何在中引用此共享副本<configuration><input>...</input></configuration>为了generator-plugin插件在两个子项目的pom中?


The Maven 远程资源插件 http://maven.apache.org/plugins/maven-remote-resources-plugin/可能就是您正在寻找的。

这是一个example http://maven.apache.org/plugins/maven-remote-resources-plugin/examples/sharing-resources.html.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Maven:在项目之间共享源 的相关文章

随机推荐