我们希望创建一个部分原型,将
因此,我们的原型包含
我们使用适当参数化的
作为测试,我们创建了一个虚拟的
我们看到了这个例子, 它没有
我们如何解决这个问题?部分原型是否不适合向现有的Maven项目中插入资源 - 相反,项目必须是非Maven的?
我们已经搜索了Maven Archetype plugin 2.2文档,但几乎没有提到部分原型及其专门行为。
custom-pom.xml
和其他资源添加到现有项目中。然后在生成的项目中通过mvn -f custom-pom.xml
使用自定义pom。因此,我们的原型包含
src/main/resources/archetype-resources/osgi-pom.xml
,但在相同目录中不包含pom.xml
。我们使用适当参数化的
archetype:generate
在现有项目上运行此原型。这会产生:[ERROR] Failed to execute goal org.apache.maven.plugins:maven-archetype-plugin:2.2:generate (default-cli) on project standalone-pom: org.apache.maven.archetype.exception.ArchetypeGenerationFailure: Error merging velocity templates: Unable to find resource 'archetype-resources/pom.xml' -> [Help 1]
作为测试,我们创建了一个虚拟的
archetype-resources/pom.xml
,然后重新运行generate
目标。这将产生:[ERROR] Failed to execute goal org.apache.maven.plugins:maven-archetype-plugin:2.2:generate (default-cli) on project standalone-pom: Don't override file /tmp/archetype/fabric-rf-server/pom.xml -> [Help 1]
我们看到了这个例子, 它没有
archetype-resources/pom.xml
。然而,我们正在使用Archetype 2.0x标准,可能是为什么该作者的策略适用于他自己,但不适用于我们的原因。我们如何解决这个问题?部分原型是否不适合向现有的Maven项目中插入资源 - 相反,项目必须是非Maven的?
我们已经搜索了Maven Archetype plugin 2.2文档,但几乎没有提到部分原型及其专门行为。
<project>
时,我假设您包括所有通常的命名空间等内容?因此,我的工作文件从以下内容开始:<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion>
- KomodoDave