如何将文件添加到执行生成目标的maven项目(mvn archetype:generate)?

时间:2012-01-09 10:24:59

标签: maven

我正在建立一个maven原型项目。作为参数(serviceDescriptor),我将路径传递给xml文件。当生成目标成功执行时,我想在src / main / resources中有serviceDescriptor文件。基于maven原型文档,似乎不可能,但应该有办法实现。

1 个答案:

答案 0 :(得分:1)

我花了几天时间,我认为我找到了一个合理的解决方案。

正如我在问题中提到的,我将文件路径作为必需属性传递给archetype:generate。 我必须实现一个简单的插件,它在archetype generate完成后执行。这个插件正在将文件复制到src / main / resources中,从文件中读取一些数据并更新pom.xml设置一些属性。为了能够修改pom.xml文件,我使用maven-model-2.0原型作为maven插件中的依赖项。它提供Maven MvenXpp3Reader和MavenXpp3Writer类,允许安全地修改pom.xml。

为了告诉原型项目在原型的生成阶段结束时执行插件:

mvn archetype:generate -goals=plugin_groupId:plugin_artifactId:goal

缺点是插件应该位于可访问的存储库或本地存储库中。