下面我正在尝试创建一个简单的Groovy文件,该文件将公开一个简单的服务,打个招呼,并通过实现ErrorController处理404错误(为避免出现白标签错误页面,我可以注入HttpServletRequest并检索状态,但这不是我现在关心的问题)
package org.test
@Grab("spring-boot-autoconfigure")
@Grab("spring-boot-autoconfigure-processor")
@RestController
public class HelloController implements ErrorController{
@GetMapping(value="/hello")
public String sayHello(){
return "Hey Joker";
}
@Override
public String getErrorPath(){
return "/error";
}
@GetMapping(value="/error")
public String notFoundException(){
return "{error:'NOT_FOUND', message:'Resource Not Found'}";
}
}
因此,当我运行> spring run restController.groovy
时,我会得到:
file:/Users/xxxx/yyyy/restController.groovy: 3: unable to resolve class ErrorController
@ line 3, column 1.
@Grab("spring-boot-autoconfigure")
^
1 error
答案 0 :(得分:0)
通过添加以下import语句,我能够启动控制器并调用hello端点(不知道为什么只需要ErrorController导入)
import org.springframework.boot.web.servlet.error.ErrorController