Swagger在将Springfox从2.9.2版本迁移到3.0.0版本之后就不起作用了



我正在研究SpringMVC,并试图将Springfoxv.2.9.2迁移到3.0.0。当我将版本更改为3.0.0时,它会给我错误:

org.springframework.context.ApplicationContextException:无法启动bean"documentationPluginsBootstrapper";嵌套异常为java.lang.NoClassDefFoundError:无法初始化类springfox.documentation.schema.Types

这是我的依赖项:

<swagger-version>3.0.0</swagger-version>
<swagger-version-ui>3.0.0</swagger-version-ui>
<swagger-annotations>2.1.11</swagger-annotations>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>${swagger-version}</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>${swagger-version-ui}</version>
</dependency>
<dependency>
<groupId>io.swagger.core.v3</groupId>
<artifactId>swagger-annotations</artifactId>
<version>${swagger-annotations}</version>
</dependency>

如何在SpringMVC中正确配置Springfox3.0.0?

互联网上的许多资源都说,只要springfox-swagger2springfox-swagger-ui两个包可用。我发现,如果只使用这两个包来运行项目,它将报告ClassnotFoundExceptionNoSuchMethodException。一点一点添加,最后实际导入的包如下:

<spring.version>5.1.5.RELEASE</spring.version>
<spring.plugin.version>2.0.0.RELEASE</spring.plugin.version>
<swagger.version>3.0.0</swagger.version>
<!-- swagger2 jar-->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>${swagger.version}</version>
<exclusions>
<exclusion>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>${swagger.version}</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-common</artifactId>
<version>${swagger.version}</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-spring-web</artifactId>
<version>${swagger.version}</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-core</artifactId>
<version>${swagger.version}</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-spi</artifactId>
<version>${swagger.version}</version>
</dependency>
<!--spring plugin,configure swagger-->
<dependency>
<groupId>org.springframework.plugin</groupId>
<artifactId>spring-plugin-core</artifactId>
<version>${spring.plugin.version}</version>
</dependency>

我不知道具体原因。但我试过了,如果任何包丢失,都会报告错误。

最新更新