如何在创建maven项目时选择过滤器编号?

Rak*_* Ss 4 spring maven

我是maven的新手,想要使用maven创建一个spring项目.下面提到的是我使用的命令:

mvn archetype:generate -DgroupId=com.rakesh.core -DartifactId=Spring3Example 
-DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false
Run Code Online (Sandbox Code Playgroud)

它要求:

  • 选择一个数字或应用过滤器(格式:[groupId:] artifactId,区分大小写):

它的要求是什么?我尝试了所有数字,我收到了这条消息:

Your filter doesn't match any archetype (hint: enter to return to initial list)
Run Code Online (Sandbox Code Playgroud)

请帮忙.

Rut*_*ans 18

在复制和粘贴教程中的示例时,我遇到了同样的问题.在摆弄它之后,我发现这是一个空白问题.我将命令粘贴到文本编辑器中并删除了一些空格:

mvn archetype:generate -DgroupId=com.mkyong.common -DartifactId=RESTfulExample -DarchetypeArtifactId=maven-archetype-webapp -DinteractiveMode=false
Run Code Online (Sandbox Code Playgroud)

这对我有用.


Rob*_*lte 0

当您有此类问题时,添加 Maven 的版本总是明智的,这样其他人就能够重现该问题。执行即可获取信息

mvn --version
Run Code Online (Sandbox Code Playgroud)

我无法使用 Maven 3.0.5 重现它,因此您可能使用的是旧版本的 Maven。也许 Maven 也选择了旧版本的原型插件。如果你像这样运行它(使用 groupId、artifactId 和插件的版本),那么你 100% 确定它使用指定的版本:

mvn org.apache.maven.plugins:maven-archetype-plugin:2.2:generate 
    -DgroupId=com.rakesh.core 
    -DartifactId=Spring3Example
    -DarchetypeArtifactId=maven-archetype-quickstart
    -DinteractiveMode=false
Run Code Online (Sandbox Code Playgroud)