【发布时间】:2012-01-09 10:24:59
【问题描述】:
我正在构建一个 Maven 原型项目。作为参数(serviceDescriptor),我将路径传递给 xml 文件。当生成目标成功执行后,我希望在 src/main/resources 中有 serviceDescriptor 文件。根据 maven 原型文档,这似乎是不可能的,但应该有办法做到这一点。
【问题讨论】:
标签: maven
我正在构建一个 Maven 原型项目。作为参数(serviceDescriptor),我将路径传递给 xml 文件。当生成目标成功执行后,我希望在 src/main/resources 中有 serviceDescriptor 文件。根据 maven 原型文档,这似乎是不可能的,但应该有办法做到这一点。
【问题讨论】:
标签: maven
我在这方面花了几天时间,我认为我找到了一个合理的解决方案。
正如我在问题中提到的,我将文件路径作为必需属性传递给原型:生成。 我必须实现一个在原型生成完成后执行的简单插件。该插件将文件复制到 src/main/resources,从文件中读取一些数据并更新 pom.xml 设置一些属性。为了能够修改 pom.xml 文件,我使用 maven-model-2.0 原型作为 maven 插件中的依赖项。它提供了允许安全修改 pom.xml 的 Maven MvenXpp3Reader 和 MavenXpp3Writer 类。
为了告诉原型项目在原型生成阶段结束时执行插件:
mvn archetype:generate -goals=plugin_groupId:plugin_artifactId:goal
缺点是插件应该在可访问的存储库或本地存储库中可用。
【讨论】: