SpringCloud-2.0(3. SpringCloud 环境搭建)
Posted ABin-阿斌
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SpringCloud-2.0(3. SpringCloud 环境搭建)相关的知识,希望对你有一定的参考价值。
我是 ABin-阿斌:写一生代码,创一世佳话,筑一揽芳华。 如果小伙伴们觉得我的文章有点 feel ,那就点个赞再走哦。
文章目录
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 :跳过单元测试
以上是关于SpringCloud-2.0(3. SpringCloud 环境搭建)的主要内容,如果未能解决你的问题,请参考以下文章
SpringCloud-2.0-周阳(13. 分布式配置中心 - SpringCloud Config)
SpringCloud-2.0 (9. 负载均衡 - OpenFeign)
SpringCloud-2.0:(10. 服务降级 - Hystrix - 引出问题)
SpringCloud-2.0-周阳(25. 简述 Seata 的原理)