1. 依赖工具

  • Maven ( >= 3.3.3 )

  • JDK

  • IntelliJ IDEA


推荐 Spring Cloud 书籍

  • 请支持正版。下载盗版,等于主动编写低级 BUG 。

  • 程序猿DD —— 《Spring Cloud微服务实战》

  • 周立 —— 《Spring Cloud与Docker微服务架构实战》

  • 两书齐买,京东包邮。

推荐 Spring Cloud 视频

  • Java 微服务实践 - Spring Boot

  • Java 微服务实践 - Spring Cloud

  • Java 微服务实践 - Spring Boot / Spring Cloud

2. 源码拉取

从官方仓库 https://github.com/spring-cloud/spring-cloud-gateway.git Fork 出属于自己的仓库。为什么要 Fork ?既然开始阅读、调试源码,我们可能会写一些注释,有了自己的仓库,可以进行自由的提交。

使用 IntelliJ IDEA 从 Fork 出来的仓库拉取代码。

如果 master 分支处于 1.x 版本,请使用 IntelliJ IDEA 切换到 2.0.X 分支。

在项目路径下,在命令行执行 mvn package -Dmaven.test.skip=true 命令,Maven 会下载依赖包,可能会花费一些时间,耐心等待下。其间可能会出现因为网络原因( 我相信你懂的 ),可能会出现失败的情况,淡定,重新执行上述命令直到成功。此刻,你就是一个 while(true) 的小强。

执行完命令后,在 IntelliJ IDEA 的 Maven Projects 视图看到部分依赖库处于报错状态,将 Profiles 的 spring 勾选上,如下图所示:

  • 再在耐心等待 Maven 下载依赖库。

  • 这步卡了很久,感谢 知秋【基佬】 的帮助。

3. 运行示例

spring-cloud-gateway-sample 子项目,官方示例。运行 GatewaySampleApplication 的 #main() 方法,启动示例。

运行成功日志如下 :

2017-11-24 15:57:23.913  INFO 54587 --- [           main] o.s.b.web.embedded.netty.NettyWebServer  : Netty started on port(s): 8080
2017-11-24 15:57:23.915 DEBUG 54587 --- [ctor-http-nio-1] r.ipc.netty.http.server.HttpServer       : [id: 0xec536a1f, L:/0:0:0:0:0:0:0:0:8080] ACTIVE
2017-11-24 15:57:23.917  INFO 54587 --- [           main] o.s.c.g.sample.GatewaySampleApplication  : Started GatewaySampleApplication in 17.744 seconds (JVM running for 28.245)

使用浏览器访问 http://127.0.0.1:8080/image/webp 地址,我们会看到一张 "狼" 图。恭喜你,调试环境已经搭建完成。为什么会返回一张图片呢,答案在 GatewaySampleApplication#customRouteLocator() 方法的路由配置。

666. 彩蛋


©著作权归作者所有:来自51CTO博客作者mb5ff80520dfa04的原创作品,如需转载,请注明出处,否则将追究法律责任

更多相关文章

  1. GitHub的注册,代码仓库的创建,用小乌龟上传代码(个人认为比较适合新
  2. GitHub 告别中文仓库刷榜/霸榜
  3. 重磅!Github 私有仓库免费开放
  4. 关于php公历农历的互相转换,你可能会需要!
  5. DockerHub访问慢怎么破?自建个企业级镜像仓库试试!
  6. 10分钟搭建自己的Git仓库
  7. 2.docker容器管理、仓库管理、数据管理、数据卷备份恢复
  8. 从0开始搭建数据仓库(2):产品经理如何“玩转”Hive SQL
  9. Python超越Java成为最受欢迎的教学语言;9月,Adblock Plus可能会退

随机推荐

  1. Android开发,使用xml drawable制作带边框
  2. android fragment(android.support.v4.app
  3. Android回炉系列之Surfaceflinger
  4. android 自定义侧边栏
  5. 查看基于Android(安卓)系统单个进程内存
  6. Building the System Android
  7. ListView美化(2)-android:cacheColorHint
  8. android软键盘挡住输入框问题解决方法
  9. android Log图文详解(Log.v,Log.d,Log.i,
  10. afinal - afinal 是一个android的 orm 和