现在让我们继续讨论这个问题。今天,我为一个Spring Boot项目安装了所有3.0.0 Swagger依赖项(boot-starter、swagger2和swagger-ui)。一切都在正常工作,但我无法更改Docket Builder中的apiInfo信息。
格雷德尔:
implementation "io.springfox:springfox-boot-starter:3.0.0"
implementation "io.springfox:springfox-swagger2:3.0.0"
implementation "io.springfox:springfox-swagger-ui:3.0.0"
SpringFoxConfig.java:
package io.ubivis.swagger;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.service.Contact;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
@Configuration
public class SpringFoxConfig {
@Bean
public Docket api() {
return new Docket(DocumentationType.SWAGGER_2)
.select()
.apis(RequestHandlerSelectors.any())
.paths(PathSelectors.any())
.build()
.apiInfo(metaData());
}
private ApiInfo metaData() {
return new ApiInfoBuilder()
.title("Spring Boot REST API")
.description("Spring Boot REST API for Space Study")
.version("1.0.0")
.license("Apache 2.0")
.contact(new Contact("XYZ", "XYZ.com", "XYZ@gmail.com"))
.licenseUrl("http://www.apache.org/licenses/LICENSE-2.0")
.build();
}
}
@Bean
public Docket api() {
return new Docket(DocumentationType.SWAGGER_2)
.select()
.apis(RequestHandlerSelectors.any())
.paths(PathSelectors.any())
.build()
.useDefaultResponseMessages(false)
.globalResponseMessage(RequestMethod.POST, responseMessageForGet())
.apiInfo(metaData());
}
在这个编辑中,我试图将依赖关系降级到2.9.2版本,寻找我的问题所在。但我还是有同样的问题(现在又有一个lol了)。
刚刚找到了我问题的答案。实际上,在开始的时候,我忘了提到我的项目是一个多模块的spring项目。我不认为这会在这个问题上改变什么,但我错了。问题是我的SpringApplication没有扫描类的swaggager配置。
如果遇到类似的问题,应该将以下注释插入到SpringBootApplication中:
@SpringBootApplication(scanBasePackages = "br.com.vicnetto")
@EnableSwagger2
public class SpringBootApplication {
public static void main(String[] args) {
SpringApplication.run(ConsoleConfigApplication.class, args);
}
}
@SpringBootApplication的参数scanBasePackages应该包括SwaggerConfiguration类。
我有一个基本的SpringBoot应用程序。使用Spring初始值设定项、嵌入式Tomcat、Thymeleaf模板引擎,并将包作为可执行的JAR文件。是一个带有Spring Boot的多模块项目,该项目将有3个模块。这里是父模块pom。xml 这里是模块核心 这里是模块web: 从父根目录,我使用以下方法生成所有模块: 但问题是tdk-web-0.0.2-SNAPSHOT。jar不包含tdk-c
父项目为demo-mybatis子模块为mybatis-dao、demo-service。demo-mybatis pom.xml如下: 4.0.0 pom mybatis-DAO Demo-service Demo-mybatis-app org.springframework.Boot spring-boot-starter-parent 2.3.2.release com.example D
我有一个带有myapp-core和myapp-web模块的myapp父pom类型maven项目。myapp-core模块作为依赖项添加到MyApp-Web。 myapp-core模块中的所有类都位于根包com.myapp.core中,而myapp-web模块中的所有类都位于根包com.myapp.web中 主要的application.java也在com.myapp.web包中。由于我的核心模块根
我得到一个错误--“请指出一个有效的Swagger或OpenAPI版本字段。支持的版本字段是Swagger:”2.0“和那些与OpenAPI:3.0.n匹配的版本字段(例如,OpenAPI:3.0.0)。”当我将生成的json从/api-docs粘贴到editor.swagger.io时。我有一些观察。 > localhost:8080/v3/api-docs/yields-此json在edito
我在教程两个模块的帮助下创建了一个springboot mutimodule项目--一个后端(java类),另一个forntend(angular 5应用程序)我在后端模块中包含了前端模块的依赖项。我正在创建一个jar使用maven资源插件。我也在将静态资源复制到pom.xml中构建目录的静态文件夹中。我还有一个@Controller返回“index”。当我运行jar时,我希望看到index.ht
null null 的POM: 的POM:http://maven.apache.org/xsd/maven-4.0.0.xsd“>4.0.0 此项目成功地从顶部编译,但运行失败: