弹簧启动控制器未注册;得到404

时间:2016-06-17 10:37:56

标签: java spring spring-mvc intellij-idea spring-boot

我在intellij和我的所有预定任务中运行spring-boot应用程序,一切正常,但我已经注册@RestController和@RequestMapping的控制器没有注册。当我尝试访问这些时,我得到404,而当我使用eclipse时,它正常工作。 甚至我的ide控制台也将休息控制器显示为已注册:

RequestMappingHandlerMapping  - Mapped "{[/api/{v1}/restaurant/{cloudSiteId}/staff/{staffId}],methods=[GET]}" onto private java.lang.Object com.limetray.inventory.controller.StaffLocationController.getStaffDetail

无法猜出可能出现的问题?

2 个答案:

答案 0 :(得分:5)

如果您的控制器与Main类位于一个单独的包中,您可以尝试将组件扫描添加到主类,指向您拥有控制器的包。示例:

@ComponentScan({ "x.y.z.myPackage1", "x.y.z.myPackage2" })

答案 1 :(得分:0)

我认为这是部署问题,您可以编辑网络应用的运行配置。菜单Run,然后是Edit configurations ...。或者工具栏中的此按钮:

Toolbar

这个例子是一个简单的servlet,没有Spring,但它给你提示。 enter image description here

enter image description here