Swagger-UI 不显示来自不同模块的控制器?

Car*_*ath 5 java swagger swagger-ui spring-boot

我在 Spring Boot 中使用 swagger,但 UI 没有显示控制器。我的项目看起来像:我在根项目中有几个 gradle 模块。REST 有两个:

  • 文档(在这个模块中我有包 *.documentation 并且我有一些带有 swagger 注释的接口)
  • 休息(在这个模块中我有包 *.controller 并且每个控制器都实现了模块文档中的文档接口)

当我尝试运行 swagger-ui 时,UI 上没有资源。但!当我将控制器移动到文档模块时,一切正常,或者当我将带有 swagger 注释的接口移动到 rest 模块时。问题仅在我使用两个模块时,一个用于 swagger 注释,另一个用于实现这些接口。

我应该怎么做才能使其与两个模块一起使用?我也在我的 SwaggerConfig 类中尝试了 ComponentScan 注释(这个类也在文档模块中)但它也不起作用。

我的项目结构:

|-- Project
|   |-- app
|       |-- src/main/java
|          |-- mypackage
|             |-- App.java
|   |-- documentation
|       |-- src/main/java
|          |-- mypackage
|             |-- config
|                |-- SwaggerConfig.java
|             |-- documentation
|                |-- ProductSwaggerInterface.java
|   |-- rest
|       |-- src/main/java
|          |-- mypackage
|             |-- controller
|                |-- ProductController.java
Run Code Online (Sandbox Code Playgroud)

在“app”模块中,我只运行 SpringBoot 应用程序,在“documentation”模块中,我有带有 swagger 注释的接口,在“rest”模块中,我在控制器中实现了这些接口。