会社のプロジェクトで使用する Maven Archetype を作成しました。無効な XML のために失敗したアーキタイプからビルドされたプロジェクトを展開するまで、すべてがうまくいきました。
アーキタイプを生成するために作成したテンプレート内には、いくつかの .xml ファイルがあります。それぞれに次の XML 宣言があります。
<?xml version="1.0" encoding="UTF-8"?>
mvn archetype:create-from-project
アーキタイプを突き止めるために実行したところ、XML 宣言のバージョンが Maven キーワードとして決定され、それが変数にラップされたようです。その結果、原型の各 XML 宣言は次のようになりました。
<?xml ${version}="1.0" encoding="UTF-8"?>
アーキタイプを使用してプロジェクトを作成した後、Maven は明らかにこの変数をユーザーが選択したプロジェクトのバージョンに置き換えました。これにより、次のような結果になりました。
<?xml 1.0-SNAPSHOT="1.0" encoding="UTF-8"?>
XML では明らかに無効です。私の質問は、どうすればmvn archetype:create-from-project
これを防ぐことができますか? 何らかの方法でスコープを制限したり、コマンドラインでフラグを設定したりする方法はありますか?