Я сейчас в процессе тестирования Swagger2
на моем проекте SpringBoot
(он отлично работает), однако он только поднимает мои классы @RestController
.Swagger2> Документ SpringBoot MvcEndpoint
мне было интересно:
- Может ли он быть использован, чтобы забрать
Spring-Actuator
MvcEndpoint? - Могут ли компоненты
Swagger2
(например,/swagger-ui.html
,/v2/api-docs
) размещаться под номером management port (e.g.http://${management.address}:${management.port}
), а неserver.port
?
Application.java
@EnableSwagger2
@SpringBootApplication
public class Application {
@Bean
public Docket api() {
return new Docket(DocumentationType.SWAGGER_2)
.select()
.apis(RequestHandlerSelectors.any())
.paths(PathSelectors.any())
.build();
}
}
AdminController.java (так называемый пользовательский конечной точки привода)
@Component
public class AdminController implements MvcEndpoint { ... }
application.yml
server.port: 8080
management.address: 127.0.0.1
management.port: 8081
build.gradle
compile("org.springframework.boot:spring-boot-starter-actuator")
compile "io.springfox:springfox-swagger2:2.5.0"
compile "io.springfox:springfox-swagger-ui:2.5.0"
Версии:
- SpringBoot:
1.4.0.RELEASE
- Gradle:
3.0
Привет, Liping, я имел в виду [порт управления, то есть 'http: // $ {management.address}: $ {management.port}'] (http://docs.spring.io/spring-boot/docs/ current/reference/html/production-ready-monitoring.html # production-ready-customizing-management-server-address), который может отличаться от 'server.port'. –
@NickGrealy Боюсь, вы не можете этого сделать. –