We will analyze the whole project of Common-service and record the whole construction process, so that more followers can refer to the study.
First, before building the common-service of Spring cloud, we need to prepare the technology:
MAVEN (project Building), Spring Boot, Spring Cloud, microservices concept, decentralized thinking, distributed, etc., for top-of-the-line projects in Common-service, where we mainly use Maven to build, gossip less, we directly on the code is the most intuitive.
Create a MAVEN top-level project where the Pom.xml file is configured as follows:
<?xml version= "1.0" encoding= "UTF-8"? ><project xmlns= "http://maven.apache.org/POM/4.0.0" xmlns:xsi= "http ://www.w3.org/2001/XMLSchema-instance "xsi:schemalocation=" http://maven.apache.org/POM/4.0.0/http Maven.apache.org/xsd/maven-4.0.0.xsd "><modelVersion>4.0.0</modelVersion><parent> < Groupid>org.springframework.cloud</groupid> <artifactid>spring-cloud-starter-parent</ artifactid> <version>Dalston.RELEASE</version> <relativepath/></parent><groupid >com.ml.honghu</groupId><artifactId>particle-commonservice</artifactId><version> 0.0.1-snapshot</version><packaging>pom</packaging><name>particle-commonservice</ Name><description>particle-commonservice Project for Spring boot</description><modules> < Module>particle-commonservice-config</module> <module>particle-commonservice-eureka</module > <modUle>particle-commonservice-mq</module> <module>particle-commonservice-cache</module> < Module>particle-commonservice-sso</module> <module>particle-commonservice-apigateway</module > <module>particle-commonservice-zipkin</module> <module>particle-commonservice-admin</ Module> <module>particle-commonservice-turbine</module> <module> Particle-commonservice-combine</module> <module>particle-commonservice-sequence</module></ Modules><properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <java.version>1.8 </java.version> <!--Framework Universal Package version set--<validator.version>5.3.4.Final</validator.version> < ;shiro.version>1.2.3</shiro.version> <druid.version>1.0.26</druid.version> <mybatis-spring.version>1.2.2</mybatis-spring.version> <shiro.version>1.2.3</shiro.version > <druid.version>1.0.11</druid.version> <ehcache.version>2.6.9</ehcache.version> <e Hcache-web.version>2.0.4</ehcache-web.version> <sitemesh.version>2.4.2</sitemesh.version> <activiti.version>5.15.1</activiti.version> <wink.version>1.4</wink.version> < Sso.client.version>3.4.1</sso.client.version>-<!--Universal Toolkit version set-<SLF4J.VERSION>1.7.7&L T;/slf4j.version> <commons-lang3.version>3.3.2</commons-lang3.version> <commons-io.version> 2.4</commons-io.version> <commons-codec.version>1.9</commons-codec.version> < Commons-fileupload.version>1.3.1</commons-fileupload.version> <commons-beanutils.version>1.9.1 </commons-beanutils.version> <FASTJSON.VERSION>1.1.40</FASTJSon.version> <xstream.version>1.4.7</xstream.version> <guava.version>17.0</guava.version > <dozer.version>5.5.1</dozer.version> <email.version>1.4.7</email.version> <poi.ve Rsion>3.9</poi.version> <cglib.version>3.2.5</cglib.version> <!--Aliyun--<aliyu N-sdk-oss.version>2.6.0</aliyun-sdk-oss.version> <aliyun-sdk-openservices-ons.version>1.2.7. Final</aliyun-sdk-openservices-ons.version> <com.ml.honghu.componet.version>0.0.1-snapshot</ Com.ml.honghu.componet.version> <spring-boot-admin.version>1.5.1</spring-boot-admin.version> < Fastjson.version>1.2.35</fastjson.version></properties><dependencymanagement> < Dependencies> <!--Spring Cloud--<dependency> <groupid>org.springframewor K.cloud</groupid> <artifactid>spring-cloud-dependEncies</artifactid> <version>Dalston.RELEASE</version> <type>pom</type> ; <scope>import</scope> </dependency> <dependency> <groupid>org.jasig .cas.client</groupid> <artifactId>cas-client-core</artifactId> <version>3.4. 1</version> </dependency> <dependency> <groupid>io.springfox</groupid& Gt <artifactId>springfox-swagger2</artifactId> <version>2.5.0</version> </depend ency> <dependency> <groupId>de.codecentric</groupId> <artifactid>s Pring-boot-admin-server</artifactid> <version>${spring-boot-admin.version}</version> & lt;/dependency> <dependency> <groupId>de.codecentric</groupId> <aRtifactid>spring-boot-admin-server-ui</artifactid> <version>${spring-boot-admin.version}</ver sion> </dependency> <dependency> <groupId>de.codecentric</groupId> <artifactId>spring-boot-admin-server-ui-hystrix</artifactId> <version>${spring-boot-a dmin.version}</version> </dependency> <dependency> <groupid>de.codecentri C</groupid> <artifactId>spring-boot-admin-server-ui-turbine</artifactId> <versi on>${spring-boot-admin.version}</version> </dependency> <dependency> <gro Upid>de.codecentric</groupid> <artifactId>spring-boot-admin-server-ui-login</artifactId> <version>${spring-boot-admin.version}</version> </dependency> <dependency> <groupid≫de.codecentric</groupid> <artifactId>spring-boot-admin-server-ui-activiti</artifactId> <version>${spring-boot-admin.version}</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> &L T;version>1.7.25</version> </dependency> <dependency> <groupid>com.ml. Honghu</groupid> <artifactId>component-base</artifactId> <version>${com.ml.h onghu.componet.version}</version> </dependency> <dependency> <groupid>com .ml.honghu</groupid> <artifactId>component-redis</artifactId> <version>${com .ml.honghu.componet.version}</version> </dependency> <dependency> <GROUPID&G T;com.ml.honghu</grouPid> <artifactId>component-utils</artifactId> <version>${com.ml.honghu.componet .version}</version> </dependency> <dependency> <groupId>com.ml.honghu< /groupid> <artifactId>component-sequence-api</artifactId> <version>${com.ml.hon ghu.componet.version}</version> </dependency> <dependency> <GROUPID>COM.M L.honghu</groupid> <artifactId>component-admin-ui-zipkin</artifactId> <version& gt;${com.ml.honghu.componet.version}</version> </dependency> <dependency> <g Roupid>com.ml.honghu</groupid> <artifactId>component-admin-ui-route</artifactId> <version>${com.ml.honghu.componet.version}</version> </dependency> <dependency> <groupId>Com.ml.honghu</groupid> <artifactId>component-zuul-label</artifactId> <version& Gt;${com.ml.honghu.componet.version}</version> </dependency> </dependencies></dependencyman Agement></project>
The current Pom.xml file introduces spring cloud related version configuration, generic tool version configuration, Honghu related component configuration (because other system service projects depend on related components, component projects are also created later), and I will be developing a recent spring The building process and the essence of cloud micro-service clouds are documented to help more friends who are interested in developing the Spring cloud framework to explore the process of building the spring cloud architecture and how to apply it to enterprise projects.
Spring Cloud architecture-Honghu Common-service project build process