代码之家  ›  专栏  ›  技术社区  ›  Abdelghani Roussi

Spring CLI(v2.1.3)无法在一个简单的groovy文件中使用grab注释获取Spring依赖项

  •  0
  • Abdelghani Roussi  · 技术社区  · 7 年前

    下面我将尝试创建一个简单的groovy文件,该文件将公开一个简单的服务,并通过实现 ErrorController (为了避免白标签错误页面,我可以注入一个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 回复  |  直到 7 年前
        1
  •  0
  •   Gergely Toth    7 年前

    通过添加以下import语句,我能够启动控制器并调用hello端点(不知道为什么只需要ErrorController导入)

    import org.springframework.boot.web.servlet.error.ErrorController