Idea新建基于springboot2.0的多模块系统 记实
Idea新建基于springboot2.0的多模块系统 记实
最近想要做一个小小的项目,练一练手,在架构上想采用多模块的形式,方便代码的重用。但是,在网络上查询了不少教程,都只是谈到了多模块的建立和如何在编辑时关联运行,并没有提到打包后的运行。在经过我一天的摸索之后,终于把多模块打包的事项调通了。本文做一个简单的记录,以便日后查看。
1、利用spring Initializr新建一个jar形式的项目
2、利用spring Initializr新建一个jar形式的模块
3、修改项目和模块的POM文件
1、对项目的POM文件,加入pom,删除掉
<build>
<finalName>qc-offline-report</finalName>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
添加
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.22.2</version>
<configuration>
<skipTests>true</skipTests>
</configuration>
</plugin>
</plugins>
</build>
添加
<modules>
<module>common</module>
<module>web</module>
</modules>
2、对于非web的模块,删除启动类,删除各位包括application文件在内的配置文件,因为只是作为普通模块,不需要作为web类。POM文件将parent改成项目名,删除掉
<build>
<finalName>qc-offline-report</finalName>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
3、对于作为web启动类的模块,POM文件将parent改成项目名,保留
<build>
<finalName>qc-offline-report</finalName>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>