: management.endpoints.enabled-by-default = false management.endpoints.web.exposure.include = здоровье, информация, время .base-path = / management.health.defaults.enabled = false

но я обновил проект с Spring Boot 1.5.1 до 2.0.0, и наша пользовательская конечная точка привода не регистрируется. Я пробовал следующие руководства по миграции конечных точек (docs.spring.io, GitHub, а такжеspring.io) перенести нашу пользовательскую конечную точку с новым подходом, но она не работает.

Вот упрощенная конечная точка, которую я пытаюсь зарегистрировать:

@Component
@Endpoint(id = "time")
public class TimeEndpoint {
    @ReadOperation
    public Map<String, Object> getTimeInfo() {
        return new HashMap<String, Object>() {{
            put("time", DateTime.now(UTC));
        }};
    }
}

Я даже пытался удалить@Component из класса и зарегистрировать его как боб в моей главной@Configuration класс как следующий:

@Bean
public TimeEndpoint timeEndpoint() {
    return new TimeEndpoint();
}

Когда я собираю проект и запускаю его, я вижу, что он регистрирует/health, /info, а также/actuator конечные точки, но не мои/time конечная точка. Попытка пойти в/time или же/actuator/time результаты в 404.

WebMvcEndpointHandlerMapping - Mapped "{[/actuator/health],methods=[GET],produces=[application/vnd.spring-boot.actuator.v2+json || application/json]}" onto public java.lang.Object org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(javax.servlet.http.HttpServletRequest,java.util.Map<java.lang.String, java.lang.String>)
WebMvcEndpointHandlerMapping - Mapped "{[/actuator/info],methods=[GET],produces=[application/vnd.spring-boot.actuator.v2+json || application/json]}" onto public java.lang.Object org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(javax.servlet.http.HttpServletRequest,java.util.Map<java.lang.String, java.lang.String>)
WebMvcEndpointHandlerMapping - Mapped "{[/actuator],methods=[GET],produces=[application/vnd.spring-boot.actuator.v2+json || application/json]}" onto protected java.util.Map<java.lang.String, java.util.Map<java.lang.String, org.springframework.boot.actuate.endpoint.web.Link>> org.springframework.boot.actuate.endpoint.web.servlet.WebMvcEndpointHandlerMapping.links(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)

Я даже пытался перейти на 2.0.1, но это тоже не помогло.

Чего мне не хватает?

Ответы на вопрос(2)

Ваш ответ на вопрос