【SpringCloud 基础】创建多module项目
简述Environment创建ProjectNewProject - Maven填写GroupIdArtifactId选择存储位置创建结果修改结果创建第一个module 注册中心 EurekaNew Module Spring选择CloudDiscovery - Eureka ServerProject的pom和module的pom的对比提取公共依赖后对比启动前启动Last简述SpringClou
简述
SpringCloud是一个微服务治理框架,基于SpringBoot,在项目构建与初期测试学习时使用多module的方式创建比较方便;idea可以使用maven或gradle的方式,这里选择maven;
Environment
- Intellij Idea version : 2017.2.4
- JavaSDK version : 1.8
- Maven version : 3.5.2
- SpringCloud version : Dalston.SR4
- SpringBoot version : 1.5.9.RELEASE
创建Project
1. NewProject -> Maven
2. 填写GroupId、ArtifactId
3. 选择存储位置
4. 创建结果
5. 修改结果
这里把src目录删掉;另外我还喜欢把project的.iml文件移到.idea下面;
创建第一个module : 注册中心 Eureka
1. New Module : Spring
- 一定要在CloudSample上右键
- New Module后选择Spring Initializr
选择Spring Initializr
填写GroupId以及ArtifactId,以及版本号d等
2. 选择CloudDiscovery -> Eureka Server
Idea 2017 的选择是这种左右目录索引的方式,2016版本似乎是上下Expand的方式,如果不一样不必太介怀;
3. Project的pom和module的pom的对比
4. 提取公共依赖后对比
这里就看情况,不喜欢放project里面也没关系,但当module多的话方project更容易管理一点,另外也可用把版本等properties放project的pom中
5. 启动前
- 在Applicatio前加@EnableEurekaServer
- 在resources目录下的application.properties中添加一些基础的属性,服务名,端口等;
- 示例中可见配置文件的属性引用方式;
6. 启动
- 控制台会报ConnectException,不必关心;
- 浏览器输入配置的地址localhost:1001 后可见下图,发现Eureka把自己也注册到了注册中心,这也是为什么此时启动会有异常的原因;
- 添加属性,eureka.client.register-with-eureka=false(不向注册中心注册自己,同样适用其它服务)
- 重新启动,异常消失,打开浏览器后Application列表为空
Last
可以发现在new module的时候不用选择spring initializr,和创建project一样选择Maven,然后在pom.xml中添加相关的依赖也是一样的;
发现一个bug,在创建module过程中,填写group、artifact、包等信息时,也有版本号,但是在版本号自己定义为1.0.0后,创建结束后pom中的version仍然会被初始化为默认的0.0.1-SNAPSHOT,应该是idea的,不过无伤大雅
如有问题欢迎私信博主或邮件machuang0104@126.com交流
更多推荐
所有评论(0)