一般情况下:使用maven构建项目有两种情况:
1:用maven构建java项目;
2:用maven构建javaweb项目;
还有一种经常需要使用到的就是用maven构建项目模块:如:一个父项目用来作为子项目继承用,子项目中又分为多模块(典型的包括domain,dao,service,web层等分层结构);
本篇博客主要讲述用maven构建java 和 javaweb项目,关于构建多模块的项目则会在下一篇博文中讲述:
这里构建项目的方式采用命令行的方式来处理(为了以后构建项目的方便,可以写成一个批处理,以后构建项目只要执行这个批处理文件即可,我就是用的这种方式,关于批处理这里就不多介绍了):
1:构建java项目:
maven命令:
mvn archetype:generate -DgroupId=%a3% -DartifactId=%a4% -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false 或
mvn archetype:create -DgroupId=%a3% -DartifactId=%a4% -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false
这里的%a3%和%a4%我这里用的是占位符表示,只需要用项目的包名和项目名来替换即可,-DarchetypeArtifactId 表示需要构建项目的类型:maven-archetype-quickstart表示的是构建java项目
这两个命令行构建的项目是一样的,区别在于,使用create命令构建速度更快;
构建号的java项目的目录结构如下所示:其中为了满足maven项目的标准目录结构,需要手动创建 resources 目录
2:构建javaweb项目:
maven命令:
mvn archetype:generate -DgroupId=%a3% -DartifactId=%a4% -DarchetypeArtifactId=maven-archetype-webapp -DinteractiveMode=false 或
mvn archetype:create -DgroupId=%a3% -DartifactId=%a4% -DarchetypeArtifactId=maven-archetype-webapp -DinteractiveMode=false
命令和构建javax项目基本一样,唯一的区别就是构建的类型这里需要指定为:maven-archetype-webapp 表示构建的是web项目;
这里构建好的web项目目录结构如一下所示:其中test目录是需要手动生成,这样就满足了maven的目录结构
这里需要特别说明一下的就是:
使用maven构建的web项目默认支持的servlet版本是2.3版本,如果需要使用到更高的版本则需要手动将生成的web.xml的头文件改成相应的版本:
如下:我将web.xml的头文件改成了3.0版本:
以上就是使用maven构建java和javaweb项目