2016-07-18 20 views
0

maven official exampleに従ってmavenのアーキタイプを作成しました。 mvn clean installコマンドを使用して自分のカスタムアーキタイプを自分のローカルリポジトリにインストールしました。私が使って原型から新しいプロジェクトを作成しようとすると、ただし、次Maven "archetype:generate"は私のカスタムアーキタイプを見つけることができませんが、対話モードからすることができます

mvn archetype:generate -DarchetypeCatalog=local -DarchetypeGroupId=aki.aboodz.archetype -DarchetypeArtifactId=my-archetype -DarchetypeVersion=1.0-SNAPSHOT -DgroupId=com.test.custom.archetype -DartifactId=archetype-example -Dversion=1.0 

私は例外MissingProjectExceptionを見つけていないプロジェクトのPOMを取得します。しかし、対話モードですべてのアーキタイプをリストするコマンドmvn archetype:generate -DarchetypeCatalog=localを入力すると、そこに私のアーキタイプがインストールされています。つまり、私はインタラクティブモードを使用してプロジェクトを作成することしかできません。

私の設定には何か問題があると思います。

PS:私はspring-quick-startアーキタイプからプロジェクトを作成しようとしましたが、同じ問題が発生します。私は対話モードからしかできません。

答えて

0

問題は、Windows PowerShellを使用してコマンドを入力したことです。 PowerShellは、パラメータに特殊文字(「 - 」や「。」など)が含まれている場合、パラメータを引用符で囲むことを期待しています(二重引用符も一重引用符も問題ありません)。 cygwinを使用して上記のコマンドを実行しようとすると、コマンドは正常に実行され、指定したアーキタイプからプロジェクトを作成しました。 Windows PowerShellで上記のコマンドを実行するには、パラメータ値を引用する必要があります。コマンドは次のようになります。

mvn archetype:generate -DarchetypeCatalog="local" -DarchetypeGroupId="aki.aboodz.archetype" -DarchetypeArtifactId="my-archetype" -DarchetypeVersion="1.0-SNAPSHOT" -DgroupId="com.test.custom.archetype" -DartifactId="archetype-example" -Dversion="1.0" 
関連する問題