文章目录
1. 搭建父工程
1. 新建 Maven 项目
2. 选择 site 架构
3. 输入项目名,并选择 3.5 以上版本的 Maven
4. Finish,等待配置 Maven 环境
5. 修改字符编码
6. 注解激活生效
7. 配置 Java 编译版本
8. File Type过滤
-
过滤掉项目目录中一些用不到的文件,以免显得太乱
-
不做也无所谓
*.hprof;*.idea;*.iml;*.pyc;*.pyo;*.rbc;*.yarb;*~;.DS_Store;.git;.hg;.svn;CVS;__pycache__;_svn;vssver.scc;vssver2.scc;
9. 删除父工程的 src 目录
2. 配置父工程的 POM 文件
-
修改打包方式为 POM
-
添加 pom 依赖,进行版本控制
<!-- 统一管理jar包版本 --> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <maven.compiler.source>1.8</maven.compiler.source> <maven.compiler.target>1.8</maven.compiler.target> <junit.version>4.12</junit.version> <log4j.version>1.2.17</log4j.version> <lombok.version>1.16.18</lombok.version> <mysql.version>5.1.47</mysql.version> <druid.version>1.1.16</druid.version> <mybatis.spring.boot.version>1.3.0</mybatis.spring.boot.version> </properties> <!-- 子模块继承之后,提供作用:锁定版本+子modlue不用写groupId和version --> <dependencyManagement> <dependencies> <!--spring boot 2.2.2--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-dependencies</artifactId> <version>2.2.2.RELEASE</version> <type>pom</type> <scope>import</scope> </dependency> <!--spring cloud Hoxton.SR1--> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-dependencies</artifactId> <version>Hoxton.SR1</version> <type>pom</type> <scope>import</scope> </dependency> <!--spring cloud alibaba 2.1.0.RELEASE--> <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-alibaba-dependencies</artifactId> <version>2.1.0.RELEASE</version> <type>pom</type> <scope>import</scope> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>${mysql.version}</version> </dependency> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>${druid.version}</version> </dependency> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>${mybatis.spring.boot.version}</version> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>${junit.version}</version> </dependency> <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>${log4j.version}</version> </dependency> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>${lombok.version}</version> <optional>true</optional> </dependency> </dependencies> </dependencyManagement> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <configuration> <fork>true</fork> <addResources>true</addResources> </configuration> </plugin> </plugins> </build>
-
补充-1:dependencyManagement 和 dependencies 的关系
- 只有在父项目中才使用 dependencyManagement,通过这个标签来实现对整个项目中的依赖的版本号的管理,这样子项目就可以不声明依赖的版本
- 如果整个项目需要更换依赖的版本,只需要在父项目的 POM 文件中修改即可,它的子项目的版本号会跟着改变
- 如果子项目想要使用和父项目不一样的版本,只需要在自己的 POM 文件中声明版本号即可
- dependencyManagement 不会正真引入依赖,只是单纯的做一个版本的控制
- 子项目需要正真引入依赖就必须要使用 dependencies 声明,只是可以不需要声明版本号
-
补充-2 :跳过单元测试