跟随视频练习的代码存放在 GitHub仓库: https://github.com/wuwei1636/java
SpringCloud与SpringBoot的版本对应
| SpringCloud版本 |
SpringBoot版本 |
| 2021.0.1-SNAPSHOT |
Spring Boot >=2.6.4-SNAPSHOT and <2.7.0-M1 |
| 2021.0.0 |
Spring Boot >=2.6.1 and <2.6.4-SNAPSHOT |
| 2021.0.0-RC1 |
Spring Boot >=2.6.0-RC1 and <2.6.1 |
| 2021.0.0-M3 |
Spring Boot >=2.6.0-M3 and <2.6.0-RC1 |
| 2021.0.0-M1 |
Spring Boot >=2.6.0-M1 and <2.6.0-M3 |
| 2020.0.5 |
Spring Boot >=2.4.0.M1 and <2.6.0-M1 |
| Hoxton.SR12 |
Spring Boot >=2.2.0.RELEASE and <2.4.0.M1 |
| Hoxton.BUILD-SNAPSHOT |
Spring Boot >=2.2.0.BUILD-SNAPSHOT |
| Hoxton.M2 |
Spring Boot >=2.2.0.M4 and <=2.2.0.M5 |
| Greenwich.BUILD-SNAPSHO |
Spring Boot >=2.1.9.BUILD-SNAPSHOT and <2.2.0.M4 |
| Greenwich.SR2 |
Spring Boot >=2.1.0.RELEASE and <2.1.9.BUILD-SNAPSHOT |
| Greenwich.M1 |
Spring Boot >=2.1.0.M3 and <2.1.0.RELEASE |
| Finchley.BUILD-SNAPSHOT |
Spring Boot >=2.0.999.BUILD-SNAPSHOT and <2.1.0.M3 |
| Finchley.SR4 |
Spring Boot >=2.0.3.RELEASE and <2.0.999.BUILD-SNAPSHOT |
| Finchley.RC2 |
Spring Boot >=2.0.2.RELEASE and <2.0.3.RELEASE |
| Finchley.RC1 |
Spring Boot >=2.0.1.RELEASE and <2.0.2.RELEASE |
| Finchley.M9 |
Spring Boot >=2.0.0.RELEASE and <=2.0.0.RELEASE |
| Finchley.M7 |
Spring Boot >=2.0.0.RC2 and <=2.0.0.RC2 |
| Finchley.M6 |
Spring Boot >=2.0.0.RC1 and <=2.0.0.RC1 |
| Finchley.M5 |
Spring Boot >=2.0.0.M7 and <=2.0.0.M7 |
| Finchley.M4 |
Spring Boot >=2.0.0.M6 and <=2.0.0.M6 |
| Finchley.M3 |
Spring Boot >=2.0.0.M5 and <=2.0.0.M5 |
| Finchley.M2 |
Spring Boot >=2.0.0.M3 and <2.0.0.M5 |
| Edgware.SR5 |
1.5.20.RELEASE |
| Edgware.SR5 |
1.5.16.RELEASE |
| Edgware.RELEASE |
1.5.9.RELEASE |
| Dalston.RC1 |
1.5.2.RELEASE |
PS:目前我使用的版本是:SpringCloud Hoxton.SR12和 Springboot 2.3.7.RELEASE
详细的版本对应 :https://start.spring.io/actuator/info
创建springcloud
- 建立一个maven的父项目
- 建立模块(两种方式)
- 创建一个maven的模块,导入springboot所需的各种依赖和注解
- 创建一个springboot的模块,在父项目的pom.xml中自己模块信息
- 修改配置文件
- 添加注解,运行nacos-server,运行项目
因为建立模块的方式卡了一上午,所以记录一下
maven的pom.xml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
| <?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>
<groupId>org.example</groupId> <artifactId>SecTest</artifactId> <version>1.0-SNAPSHOT</version>
<packaging>pom</packaging>
<modules> <module>demo</module> </modules>
<properties> <maven.compiler.source>8</maven.compiler.source> <maven.compiler.target>8</maven.compiler.target> </properties>
<dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-dependencies</artifactId> <version>Hoxton.SR12</version> <type>pom</type> <scope>import</scope> </dependency> <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-alibaba-dependencies</artifactId> <version>2.2.7.RELEASE</version> <type>pom</type> <scope>import</scope> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-dependencies</artifactId> <version>2.3.7.RELEASE</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement>
</project>
|
子模块的pom.xml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98
| <?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 https://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.example</groupId> <artifactId>demo</artifactId> <version>0.0.1-SNAPSHOT</version> <name>demo</name> <description>demo</description>
<properties> <java.version>1.8</java.version> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <spring-boot.version>2.3.7.RELEASE</spring-boot.version> <spring-cloud-alibaba.version>2.2.2.RELEASE</spring-cloud-alibaba.version> </properties>
<dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId> </dependency>
<dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <optional>true</optional> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> <exclusions> <exclusion> <groupId>org.junit.vintage</groupId> <artifactId>junit-vintage-engine</artifactId> </exclusion> </exclusions> </dependency> </dependencies>
<dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-dependencies</artifactId> <version>${spring-boot.version}</version> <type>pom</type> <scope>import</scope> </dependency> <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-alibaba-dependencies</artifactId> <version>${spring-cloud-alibaba.version}</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement>
<build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.8.1</version> <configuration> <source>1.8</source> <target>1.8</target> <encoding>UTF-8</encoding> </configuration> </plugin> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <version>2.3.7.RELEASE</version> <configuration> <mainClass>com.example.demo.DemoApplication</mainClass> </configuration> <executions> <execution> <id>repackage</id> <goals> <goal>repackage</goal> </goals> </execution> </executions> </plugin> </plugins> </build>
</project>
|
配置类
1 2 3 4
| server.port=8081 spring.application.name=nacos-provider spring.cloud.nacos.discovery.server-addr=127.0.0.1:8848 management.endpoints.web.exposure.include=*
|
启动类
1 2 3 4 5 6 7 8 9
| @SpringBootApplication @EnableDiscoveryClient public class DemoApplication {
public static void main(String[] args) { SpringApplication.run(DemoApplication.class, args); }
}
|
