VS Code开发Spring Boot + Cloud示例(四)Spring Boot + Gradle多项目框架
Spring Boot Cloud微服务架构必然会有多个服务、微服务、模块什么的,所以创建多项目比较方便。网上的demo好像大部分是Maven的,接下来我用Gradle来创建多项目示例。示例包括一个主项目带两个微服务子项目。
1 用向导创建标准项目
首先用VS Code开发Spring Boot + Cloud示例(二)创建Spring Boot示例项目的方法创建3个一模一样的项目,分别保存到spring-cloud-demo、spring-cloud-demo/module1、spring-cloud-demo/module2。用VS Code分别打开这三个项目,有VS Code自动生成项目相关文件,如.classpath。生成好后只打开spring-cloud-demo就行:
主项目不需要代码,所以可以删除src、bin、.classpath这些东西。
2 配置父子关系
2.1 主项目配置
setting.gradle中增加配置来包含子项目
include 'module1','module2'
build.gradle里的所有内容移到
subprojects { }
subprojects里的配置会给所有子项目共用。不知道为什么spring的两个插件不能这样用,只能先注释掉,子项目自己加。
2.2 子项目配置
build.gradle里面所有东西都去掉,只需要有主项目没有的配置,如增加web依赖
apply plugin: 'org.springframework.boot'
apply plugin: 'io.spring.dependency-management'
dependencies { compile('org.springframework.boot:spring-boot-starter-web') }
2.3 验证配置成功
在命令行下只要执行主项目的“gradle build”就会构建所有子项目
3 调试
3.1 完善微服务示例
还是按照第二篇的方法,完善几个代码。
module1的HelloController.java,return “Hello Spring Boot 1!”;
module2的HelloController.java,return “Hello Spring Boot 2!”;
module1的application.yml,端口8080
module2的application.yml,端口8081
注意:yml文件里的冒号后面都要加个空格。
3.2 生成调试配置
按F5或在调试页选择增加配置,VS Code会在.vscode目录下生成launch.json文件,多余配置可以删掉,只保留module1和module2的。以后增加新的子项目也可以删除launch.json,重新生成全部的调试配置。
如果遇到配置生成不正确或java文件不能纠错,可能是项目有错误(如子项目同名)或缓存问题。
可以按Ctrl+Shift+P,输入Java:Open Java Language Server Log file,查看日志文件来排错。
同时删除C:\Users\<用户名>\AppData\Roaming\Code\CachedData目录下的缓存,重新打开VS Code是就能正常识别java文件和生成调试配置了。
3.3 运行调试
分别选择Debug (Launch)-DemoApplication和Debug (Launch)-DemoApplication,把两个微服务都跑起来。
3.4 浏览器访问页面
分别访问http://localhost:8080/hello , http://localhost:8081/hello ,页面出来证明成功。
还没有评论,来说两句吧...