Swagger2 引入knife4j java.lang.ClassNotFoundException: springfox.documentation.common.ClassPresentInC

Caused by: java.lang.ClassNotFoundException: springfox.documentation.common.ClassPresentInClassPathCondition
	at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
	... 59 common frames omitted

版本的兼容性问题,我是用的是swagger2.9.1,然后knife4j 使用的是3.0.2(官方的最新版本)

 		<dependency>
            <groupId>com.github.xiaoymingroupId>
            <artifactId>knife4j-spring-boot-starterartifactId>
            <version>3.0.2version>
        dependency>

可能与guava也存在版本冲突问题

		<dependency>
            <groupId>com.google.guavagroupId>
            <artifactId>guavaartifactId>
            <version>29.0-jreversion>
        dependency>

在网上找了一些资料也未解决,尝试降低了knife4j 的版本为2.0.2 可以正常使用
http://ip/api/doc.html 就可以访问,访问不了,出现304错误,记得将文档的地址进行放行可能被拦截器进行拦截了,注解的使用和swagger2相同

你可能感兴趣的:(SpringBoot)