swagger 使用springdoc-openapi-javadoc时的Sping Boot 应用程序问题

4ioopgfo  于 2022-12-13  发布在  Spring
关注(0)|答案(1)|浏览(1126)

我在我的Sping Boot 应用程序(Spring boot版本2.7.2)中使用springdoc-openapi-ui(版本1.6.12)来编写API文档。它工作正常,我没有遇到任何问题。但是我想添加一个功能,将javadoc注解推送到swagger-ui
为此我添加了依赖springdoc-openapi-javadoc(版本1.6.12)到我的POM文件。为了支持依赖推送javadoc注解,我添加了以下maven插件,这是文档所需要的。

<plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <configuration>
            <annotationProcessorPaths>
                <path>
                    <groupId>com.github.therapi</groupId>
                    <artifactId>therapi-runtime-javadoc-scribe</artifactId>
                    <version>0.15.0</version>
                </path>
            </annotationProcessorPaths>
        </configuration>
    </plugin>

在添加插件和依赖项后,我在应用程序中遇到了很多问题。例如,我无法添加新日志并构建应用程序。我使用lombok及其注解@Slf4j添加日志。当我添加新日志时,我得到以下错误。

java: cannot find symbol
  symbol:   variable log
  location: class com.example.swaggerDemo.controllers.BookController

我不太清楚这个问题的根本原因。有人遇到过同样的问题吗?是否有可用的解决方案,或者我的实现中是否有什么错误导致了这个错误?
您的建议是亲切的赞赏和感谢!

mkh04yzy

mkh04yzy1#

您需要将lomboktherapi-runtime-javadoc-scribe添加到maven-compiler-plugin配置中
也就是

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <configuration>
        <annotationProcessorPaths>
            <path>
                <groupId>com.github.therapi</groupId>
                <artifactId>therapi-runtime-javadoc-scribe</artifactId>
                <version>0.15.0</version>
            </path>
            <path>
                <groupId>org.projectlombok</groupId>
                <artifactId>lombok</artifactId>
                <version>${lombok.version}</version>
            </path>
        </annotationProcessorPaths>
    </configuration>
</plugin>

相关问题