0

是否可以将原型和普通 Maven 插件的功能组合到一个插件中?

我有一种可以编译成 Java 源代码的自定义语言。我已经编写了一个 Maven 插件,它在generate-sources阶段执行此操作,将 Java 源代码添加到项目中,然后构建项目。它按我的预期工作。

但是,要使用它,我需要先写出一个pom.xml引用我的插件并描述输入文件所在位置的文件。我希望能够在单个 maven 命令中直接从原始输入文件到编译代码。

例如,假设我有这个目录结构:

my-project/
    some-input-file.dsl

我想跑

bash$ mvn com.waisbrot.plugin:generate -DgroupID=com.waisbrot package

并且在 Maven 完成运行后有:

my-project/
    some-input-file.dsl
    pom.xml
    target/
        generated-sources/
            plugin/
                SomeInputFile.java
        classes/
            com/
                waisbrot/
                    SomeInputFile.class
        some-input-file-1.0.jar
4

1 回答 1

1

实际上,原型的集成测试允许您声明参数和目标。所以这样做:

  1. 选择您要创建的模板项目
  2. mvn 原型:从项目创建。它将创建一个新的原型
  3. 查看 src/test/resources/projects,尤其是 target.txt 和 archetype.properties(来源:http ://maven.apache.org/archetype/maven-archetype-plugin/integration-test-mojo.html )。调整所以安装将是隐含的
  4. mvn verify 将能够构建原型、运行它并安装它

希望能帮助到你

于 2013-01-14T07:48:59.800 回答