java - 即使将 Swagger 添加为 Maven 依赖项,也无法导入 @ApiParam 或 @ApiModelProperty 注释

标签 java maven annotations swagger importerror

我正在做一个项目,我们用 Swagger 记录后端的 API。我想为 Swagger 使用基于注释的配置。对于我使用 @Tag@Operation@ApiResponses 的 Controller 类,它们工作得很好,它们可以使用以下语句导入:

import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.responses.ApiResponse;
import io.swagger.v3.oas.annotations.responses.ApiResponses;
import io.swagger.v3.oas.annotations.tags.Tag;

但是,如果我尝试将 @ApiParam@ApiModel 添加到我的代码中,我将无法以任何方式导入它们。

在我的 POM.xml 中,我添加了 Swagger 作为以下依赖项:

<!-- https://mvnrepository.com/artifact/io.swagger.core.v3/swagger-annotations -->
<dependency>
    <groupId>io.swagger.core.v3</groupId>
    <artifactId>swagger-annotations</artifactId>
    <version>2.1.11</version>
</dependency>

我在这里缺少什么?我尝试关注 this Baeldung article和示例代码,但是我无法让它工作。感谢您的帮助!

最佳答案

“问题”是 Springdoc使用了,最初我假设使用了 Springfox 或普通的 Swagger 2 依赖项,因为它没有从代码库中删除。

要解决这个问题,我们只需要添加正确的依赖项并使用新的注释,这些注释映射到旧的注释,如 explained here。 .

关于java - 即使将 Swagger 添加为 Maven 依赖项,也无法导入 @ApiParam 或 @ApiModelProperty 注释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69555126/

相关文章:

java - 从 ArrayList 中删除项目时出错

java - 自定义 View 无法正确绘制

java - 在eclipse中运行maven项目的问题,不被识别为Java项目

java - 我应该把@Transactional注释: at an interface definition or at an implementing class?放在哪里

java - 如何在 Android 中查看和记录 GCM 消息的完整结构?

c# - 为什么在变量之后不进行转换?

java - Java 注释中的类型层次结构

generics - Kotlin 注释作为通用函数参数

java - Gradle 和 Bintray 插件 : Cannot cast _Decorated

java - 当另一个配置文件被激活时自动激活一个配置文件