部分的なアーキタイプを作成してcustom-pom.xml
、他のリソースと同様に既存のプロジェクトに追加したいと考えています。カスタム pom は、生成されたプロジェクトで を介して使用されmvn -f custom-pom.xml
ます。
したがって、私たちのアーキタイプには が含まれていますが、同じディレクトリに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 プラグイン 2.2 のドキュメントを精査しましたが、部分的なアーキタイプとその特殊な動作についてはほとんど言及されていません。