我正在尝试集成我的Spring Boot版本2.0.1。大摇大摆地释放
。
从这篇博文中可以看出,只需添加两个Maven依赖项就很容易了,一切都应该可以正常工作。
因此,我在pom中添加了以下依赖项:
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.8.0</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.8.0</version>
</dependency>
并创建了SwaggerConfig
bean:
@Configuration
@EnableSwagger2
public class SwaggerConfig {
@Bean
public Docket api() {
Docket docket = new Docket(DocumentationType.SWAGGER_2)
.select()
.apis(RequestHandlerSelectors.any())
.paths(PathSelectors.any())
.build();
return docket;
}
}
在属性文件中,在尝试使其工作时,我得到了以下3个条目:
spring.application.name=cat-service
management.server.servlet.context-path=/cat-service
server.servlet.contextPath=/cat-service
但是在最后,当访问
http://localhost:8080/cat-service/api/v2/api-docs
或位于的UI页面
http://localhost:8080/cat-服务/炫耀用户界面。html
我发现一个页面未找到
错误。
我在swagger github页面中发现了这个问题,在stackoverflow中发现了这个问题,但我无法更改我的404
错误。
首先将SwaggerConfig.java文件添加到您的springstart文件的同一个包中,如以下示例所示。
@Configuration
@EnableSwagger2
@EnableWebMvc
public class SwaggerConfig extends WebMvcConfigurerAdapter {
@Bean
public Docket api() {
return new Docket(DocumentationType.SWAGGER_2)
.select()
.apis(RequestHandlerSelectors.any())
.paths(PathSelectors.any())
.build();
}
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("swagger-ui.html")
.addResourceLocations("classpath:/META-INF/resources/");
registry.addResourceHandler("/webjars/**")
.addResourceLocations("classpath:/META-INF/resources/webjars/");
}
}
试试这个http://localhost:8080/spring-安全rest/api/swagger ui。html
或http://localhost:8080/spring-安全Rest/炫耀用户界面。html
如果不起作用,请尝试更改应用程序中的路径。性质
将此添加到应用程序。特性:
server.servlet-path=/loop-service
并尝试以下网址:
http://localhost:8080/loop-服务/炫耀用户界面。html
(UI文档)
http://localhost:8080/loop-服务/v2/api文档
(JSON文档)
请查看参考资料:https://springfox.github.io/springfox/docs/current/
“2.1.3。从现有的2. x版本迁移”
您可以从您的pom.xml中删除springfox-swagger2和springfox-swagger-ui,并添加springfox-boo-starter(例如版本3.0.0)。您还可以删除@EnableSwagger2注释
并且:"swagger-ui位置已从超文本传输协议://host/encent-path/swagger-ui.html移动到超文本传输协议://host/encent-path/swagger-ui/index.htmlOR超文本传输协议://host/encent-path/swagger-ui/简称。这使得它可以更好地将其作为web jar拉出来,如果不需要,可以使用配置属性将其关闭。"
我能够使它与Spring Boot版本2.0.4一起工作。RELEASE
和这篇博客文章:
我添加了以下依赖项:
<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>
和此配置文件:
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2;
@Configuration
@EnableSwagger2
public class SpringFoxConfig {
@Bean
public Docket apiDocket() {
return new Docket(DocumentationType.SWAGGER_2)
.select()
.apis(RequestHandlerSelectors.any())
.paths(PathSelectors.any())
.build();
}
}
它成功了。
可以通过/Swagger UI访问Swagger UI。html#
我在我的本地主机上开发了一个laravel应用程序,运行非常好。我正试图使用Ubuntu 20.04上的nginx将其部署到AWS Lightsail实例上。我已经上传了我的laravel应用程序,并将nginx根目录更改为laravelapp/public。 主索引页(着陆页)工作正常,但我的路线都不工作(即 /login, /about等)。当我试图访问任何路线时,我得到一个404未找到错误。
问题内容: 这是https://github.com/systemjs/builder/issues/611的交叉发布 我正在尝试将我的Angular 2 rc 1应用程序与systemjs-builder 0.15.16 方法捆绑在一起。角度组件具有视图以及脚本外部的一个或多个样式表。在元数据中以两种方式之一引用它们 使用绝对路径: 使用现在推荐的相对路径: 我的应用使用相对路径,并且一切正常。
问题内容: 由于某些原因,我的fx:id无法正确绑定到我的类,因此始终会导致错误。 控制者 XML文件 我认为我了解问题的根源,但不了解如何正确解决。根据这个问题的答案,我认为我正在尝试在调用构造函数之前分配FXML元素(并且这些元素只能在初始化期间/之后分配)。 有没有办法 不 执行此操作?还是我犯了一个完全不同的错误? 问题答案: 您使用进口 在您的fxml文件中。 因此,在加载fxml文件时
启用proguard规则后,我在向网络发送任何内容之前遇到以下错误。 java.lang.RuntimeException:无法将FormDocTankPermission转换为RequestBody 引起的 com.fasterxml.jackson.databind.exc.InvalidDefinitionException:找不到类FormDocTankPermission的序列化程序,也
我想我明白我的问题的根源,但我不明白如何正确地解决它。根据这个问题的答案,我认为我试图在调用构造函数之前分配FXML元素(这些元素只能在初始化期间/之后分配)。 有没有一种方法可以在不实现的情况下做到这一点?还是我犯了一个完全不同的错误?
问题内容: 如果我在2.0版本中将Jersey的url-pattern映射到,它将为所有静态资源(例如/index.html)造成404。我的具有: 如何使用相同的网址格式投放静态内容? 问题答案: 使用Jersey 1.x,如果你从Jersey servlet切换到过滤器,则应该能够从同一路径提供静态内容。删除你指定的servlet XML并将其切换到: 编辑:在Jersey 2.x中,你应该可