java - Spring - 将外部 jar 中的异常处理程序用于另外 2 个项目

标签 java spring exceptionhandler controller-advice

我有 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')

最佳答案

在项目中添加 @Import(GlobalExceptionHandler.class) 修复了问题,并且处理程序现在可以正确调用。

关于java - Spring - 将外部 jar 中的异常处理程序用于另外 2 个项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64488481/

相关文章:

java - Spring @Transactional 具有来自不同调用源的不同隔离级别

java - 无法在小程序中捕获直播

java - 从jsp传递值到struts2 Action 的问题

java - Spring MVC 3.1.0 错误?升级 Controller 后不再自动检测

java - Spring Boot 中的多态配置属性

java - 从 Spring 异常处理程序中读取 httprequest 内容

java - 关于Spring Boot上传文件大小的问题

angularjs - Angular JS : $exceptionHandler without try or throw block?

java - 使用 Maven 构建时在运行时缺少 jaxb.properties

java - 使用java和apache commons CSV库在CSV文件中搜索 "Item"