我有 2 个项目具有相同的异常并使用相同的异常处理程序。所以所有的异常和异常处理程序都被移到了一个外部模块。
异常导入得很好,但似乎没有调用异常处理程序。据我了解,如果我有 @ComponentScan 注释,则应该从外部 jar 调用处理程序。
这是我的异常处理程序的样子:
@ComponentScan(basePackages = {"com.*first-project*.controller",
"com.*second-project*.controller"})
@ControllerAdvice(basePackages = {"com.*first-project*.controller",
"com.*second-project*.controller"})
public class GlobalExceptionHandler {
...
}
当异常处理程序单独作为每个项目的一部分时,它工作得很好。然后它在@ControllerAdvice 注释中只有该项目的路径,并且没有@ComponentScan。
带有异常处理程序的外部 jar 当前通过以下方式导入:
compile files('libs/*jar-name*.jar')