0. →eclipse spring-cloud 项目源码下载←
1. 新建主项目
![]()
|
![]()
|
![]()
|
2. 新建子项目
(1)第一步,建立注册中心(资源中的 springcloud-eureka)
(2)第二步,建立配置中心(资源中的 springcloud-mysql)
(3)其他。
(4)建立子项目在 eclipse 中的操作
![]()
|
![]()
|
![]()
|
3. 一些常见问题
(1)主项目中的 pom.xml 加入如下这段配置是因为子项目的 pom.xml 配置没问题的时候会有红叉,查资料说这是官方的一个 bug
加入这段配置即可解决,如果不加,项目也可以正常运行
<properties>
<maven-jar-plugin.version>3.1.1</maven-jar-plugin.version>
</properties>
(2) springcloud-product 项目展示了当 springcloud-mysql 作为配置中心时,其他子项目如何向配置中心获取初始化参数
(3) 每个项目的主方法中,启动方式有两种,可以自行选择
public static void main(String [] args) {
SpringApplication.run(RegisterMain.class, args);
// new SpringApplicationBuilder(RegisterMain.class).web(WebApplicationType.SERVLET).run(args);
}
(4) 每个项目的注解一定要配置正确
* @SpringBootApplication spring-boot 启动注解
* @EnableEurekaServer 是 eureka 注册中心必须的注解
* @EnableEurekaClient 是 eureka 子项目必须的注解
* @EnableConfigServer 是配置中心必须的注解,它实现了子项目启动时通过配置中心从mysql读取各自配置的过程(这部分通过 springcloud-mysql 和 springcloud-product 两个子项目展示)
(5) .yml 文件书写格式一定要严格,该有的缩进、空格一定不能省
(6) springcloud-product 中使用 bootstrap.yml(查阅资料,说项目读取 yml 文件时,先读取 bootstrap.yml, 再读取 application.yml,所以只要内容配置对就好)
(7) springcloud-mongo 项目,使用的 mongo驱动版本比较高,如果之前的项目 mongo 版本低(比如下面这个版本)
由于新版本已经不再使用 com.mongodb.BasicDBObject, com.mongodb.DBObject 这些对象,
因此如果是项目迁移,只能自己去做适配
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-mongodb</artifactId>
<version>1.8.2.RELEASE</version>
</dependency>
<dependency>
<groupId>org.mongodb</groupId>
<artifactId>mongo-java-driver</artifactId>
<version>3.4.1</version>
</dependency>
4. 搭建项目时,参考了很多文章,十分感谢
其中有一些文章中的配置可能和本文有些出入,很大可能是由于使用的 spring-cloud 版本不同。如果使用 (Hoxton.SR9)(eureka) 那么项目中的配置是没有问题的。
(1)(一)eclipse快速搭建Spring Cloud 微服务框架
(2)SpringCloud(9)---mysql实现配置中心
(3)SpringBoot | 第三十一章:MongoDB的集成和使用
5. 搭建完毕,启动之后的配置中心页面