signed

QiShunwang

“诚信为本、客户至上”

【低级错误】SpringCloud微服务启动后无法访问指定路径问题

2020/12/26 14:27:58   来源:

【低级错误】
环境:
1.注册中心使用eureka。
2.springcloud使用Finchley.RELEASE。
3.springboot使用2.0.3release。
4.使用maven父子聚合项目。
5.IDE使用idea
问题:
通过查看注册中心发现,提供数据的springboot服务已经注册成功,但是无法通过注册成功的服务进行路径(控制类里映射了/products)访问,响应状态码为404。
在这里插入图片描述
解决方法:
1、通过查看对比注册中心子项目和数据服务子项目的项目结构,发现提供数据服务的子项目在facets下面为“unmapped spring configuration”。而注册中心有“*MVC,*Bootstrap”等内容,说明提供数据的springboot有问题。
2、查看数据子项目的目录结构,发现启动springboot服务的类在创建项目时自动放在了生成的包(springcoud.productServiceApplication)里面,而我的控制类,服务类位于springcloud.controller包,springcloud.service包。从而导致找不到映射,将启动springboot服务的类移动至springcloud包下面后,重新启动问题解决。
总结:
从文件系统目录层次来看,启动springboot服务的类应该位于控制类目录的上层目录,即控制类,服务类位于springcloud/controller/Controller.java,springcloud/service/Service.java下时,服务启动类应该位于springcloud/Application.java。