2023-04-01 12:15:06.956 [pool-4-thread-1] ERROR
s.d.s.web.plugins.DocumentationPluginsBootstrapper:98
- Unable to scan documentation context default
java.lang.NullPointerException: null
at springfox.documentation.schema.Example.equals(Example.java:131)
通过堆栈跟踪可以发现是Maven: io.springfox:springfox-core:3.0.0中的问题
以更改源代码并替换jar包的形式修复该问题
首先下载源代码
https://github.com/springfox/springfox.git
找到代码
springfox-core\src\main\java\springfox\documentation\schema\Example.java
行号: 131
问题代码:
return id.equals(example.id) &&
Objects.equals(summary, example.summary) &&
Objects.equals(description, example.description) &&
value.equals(example.value) &&
externalValue.equals(example.externalValue) &&
mediaType.equals(example.mediaType) &&
extensions.equals(example.extensions);
尝试改为:
return Objects.equals(id, example.id) &&
Objects.equals(summary, example.summary) &&
Objects.equals(description, example.description) &&
Objects.equals(value, example.value) &&
Objects.equals(externalValue, example.externalValue) &&
Objects.equals(mediaType, example.mediaType) &&
Objects.equals(extensions, example.extensions);
根目录gradle-install打包,类似maven-install
虽然会报错,但是springfox-core-3.0.1-SNAPSHOT.jar还是生成了
放置到 resources/libs/springfox-core-3.0.1-SNAPSHOT.jar
编辑pom.xml
添加或替换:
...
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-core</artifactId>
<version>3.0.1-SNAPSHOT</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/resources/libs/springfox-core-3.0.1-SNAPSHOT.jar</systemPath>
</dependency>
...
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<!-- maven打包时会将外部引入的jar包(比如在根目录下或resource文件下新加外部jar包)打包到项目jar -->
<includeSystemScope>true</includeSystemScope>
</configuration>
</plugin>
</plugins>
</build>
可以了