在我們的 springboot 專案中,我們使用 openapi 來生成資料的表示。但是如果我嘗試構建專案,它看起來生成的類/介面缺少所有依賴項。我收到很多錯誤,比如java: package io.swagger.annotations does not existor java: package springfox.documentation.annotations does not exist。
但是依賴項應該在那里。該專案有 2 個 pom.xml 檔案。一個在專案主目錄,一個在生成資料的src目錄。src 目錄下的 pom 包含
<build>
<sourceDirectory>src/main/java</sourceDirectory>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-commons</artifactId>
</dependency>
<!--SpringFox dependencies -->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>${springfox-version}</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>${springfox-version}</version>
</dependency>
<dependency>
<groupId>javax.xml.bind</groupId>
<artifactId>jaxb-api</artifactId>
<version>2.3.1</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.datatype</groupId>
<artifactId>jackson-datatype-jsr310</artifactId>
</dependency>
<dependency>
<groupId>org.openapitools</groupId>
<artifactId>jackson-databind-nullable</artifactId>
<version>0.2.1</version>
</dependency>
<!-- Bean Validation API support -->
<dependency>
<groupId>javax.validation</groupId>
<artifactId>validation-api</artifactId>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
</dependency>
</dependencies>
swagger這里列出了所有需要的依賴項。這就是為什么我不明白為什么所有這些錯誤都說找不到包。我不知道為什么會發生這種情況,所以如果有人可以幫助我,我將非常感激。
uj5u.com熱心網友回復:
嘗試在兩個依賴項上切換到 2.92 版本
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.9.2</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.9.2</version>
</dependency>
如果您使用 SpringToolSuite4 更改版本,則強制更新 Maven 專案應該可以作業:專案 > 更新 Maven 專案 > 強制更新快照/發布
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/477095.html
