MVN命令行创建工程及注意事项

时间:2022-06-19 17:45:40

创建Maven的Web项目

错误的命令示例:

mvn archetype:create -DgroupId=com.mycompany.app -DartifactId=my-webapp -DarchetypeArtifactId=maven-archetype-webapp

使用archetype会默认使用最新的release版本,下图中显示最新需要版本是2.3,但是安装的是2.2,因此需要在命令中显示的标明版本号。

MVN命令行创建工程及注意事项

所以需要对archetype进行限定,同理,对于下面创建Maven的普通项目也适用。将archetype更改为“三元组坐标”限定:org.apache.maven.plugins:maven-archetype-plugin:2.2即可。正确的命令为:

mvn org.apache.maven.plugins:maven-archetype-plugin:2.2:create -DgroupId=com.mycompany.app -DartifactId=my-webapp -DarchetypeArtifactId=maven-archetype-webapp

使用mvn创建普通java项目

mvn archetype:create  -DgroupId=com.codeline.commons 
-DartifactId=pjoName

对于以上所述的问题,还有一种方式,但是还没有亲测过:

打开maven的setting.xml文件,找到有效的插件仓库的配置位置,在标签下面加上

<snapshots>
<enabled>false</enabled>
</snapshots>

的配置,这样在下载插件的时候就不会下载快照版本了。

按照第一种方法时,生成的File即为Maven工程,import到eclipse中,可能会导致“看起来没有原因的红叉“。这是因为Buildpath中没有关联正确的jdk导致的。选择WorkspaceDefaultJRE即可。

附录

archetype是mvn内置的一个插件,create任务可以创建一个java项目骨架,DgroupId是软件包的名称,DartifactId是项目名,DarchetypeArtifactId是可用的mvn项目骨架,目前可以使用的骨架有:
{* maven-archetype-archetype
* maven-archetype-j2ee-simple
* maven-archetype-mojo
* maven-archetype-portlet
* maven-archetype-profiles (currently under development)
* maven-archetype-quickstart
* maven-archetype-simple (currently under development)
* maven-archetype-site
* maven-archetype-site-simple
* maven-archetype-webapp}
每一个骨架都会建相应的目录结构和一些通用文件。