对于一些大型的项目来说,将项目的各个模块理清并进行管理,便于后续项目的维护,使用maven管理是很方便的,它可以很好的构建模块来设计项目的整体结构,对一些小型的项目不建议使用
1、新建父maven模块(idea版本为2017.2)
选择maven类型
点击next,填写GroupId和AtifactId
点击next
确认工程名和存放路径后点击finish
选择打开方式后完成父项目构建,如下图所示
由于父类是作为一个模板,其src可以删除掉
2、构建子maven模块
右击父模块名,新建一个module
选择maven类目
点击next并填写子类ArtifactId
点击next
点击finish,查看父类pom文件可以看到引入新建的module
其他模块添加一样,也可以继续在子模块中添加子模块,此时视当前子模块为其子模块的父模块,处理方式和顶层父类一致。
针对web项目,可以在新增子module是类目选择类似Spring Initailizr
此处选择war类型
新建完之后web项目结构如下
部署时需要在父pom文件中配置如下,父类中可以使用dependencyManagement来管理依赖,子模块继承其中的依赖,从而达到统一管理依赖版本的问题
<build><finalName>mavenfinalName><plugins><plugin><groupId>org.springframework.bootgroupId><artifactId>spring-boot-maven-pluginartifactId><configuration><executable>trueexecutable>
<mainClass>com.maven.web.WebApplicationmainClass><includeSystemScope>trueincludeSystemScope>configuration><executions><execution><configuration><classifier>execclassifier>configuration>execution>executions>plugin><plugin><groupId>org.apache.maven.pluginsgroupId><artifactId>maven-surefire-pluginartifactId><configuration><useSystemClassLoader>falseuseSystemClassLoader>configuration>plugin><plugin><groupId>org.apache.maven.pluginsgroupId><artifactId>maven-compiler-pluginartifactId><configuration><source>${java.version}source><target>${java.version}target>configuration>plugin>plugins>build>