Pre

在前后端分离项目中,通常需要用到 API 文档,springfox 开发的 SpringFox 可以实现自动化 json API 文档。

Next

但是在配置初期的时候突然遇到一个小问题。一切准备就绪之后并启动服务器,无法访问 http://localhost:8080/swagger-ui.html。

查看输出的日志:

1
2
2018-11-23 15:57:23.996  INFO 25445 --- [  restartedMain] d.s.w.p.DocumentationPluginsBootstrapper : Found 1 custom documentation plugin(s)
2018-11-23 15:57:24.018 INFO 25445 --- [ restartedMain] s.d.s.w.s.ApiListingReferenceScanner : Scanning for api listing references

这两条重要的日志都输出了,按道理来讲是不存在任何问题的。

Sulotion

最终想到可能是静态资源没有引入,查看 build.gradle (maven 项目自然应该查看 pom.xml)并对比官方文档说明,发现缺失 jcenter repository 源。

gradle (repositories 不能缺失)

1
2
3
4
5
6
7
repositories {
jcenter()
}

dependencies {
compile "io.springfox:springfox-swagger2:2.9.2"
}

或者 maven (repositories 不能缺失)

1
2
3
4
5
6
7
8
9
10
11
12
13
<repositories>
<repository>
<id>jcenter-snapshots</id>
<name>jcenter</name>
<url>https://jcenter.bintray.com/</url>
</repository>
</repositories>

<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.9.2</version>
</dependency>