Почему я получаю эту ошибку «EmbeddedServletContainerInitializedEvent не может быть разрешен для типа»? - PullRequest
0 голосов
/ 11 июля 2019

Как я могу устранить эту ошибку при весенней загрузке?

Я пытаюсь получить номер порта и имя хоста, но постоянно получаю эту ошибку.

@SpringBootApplication
public class RegistrationFormApplication implements ApplicationListener<EmbeddedServletContainerInitializedEvent> {
    @Autowired
    Environment environment;
    public static void main(String[] args) {
        SpringApplication.run(RegistrationFormApplication.class, args);
    }
    Logger logger;

    @Override
    public void onApplicationEvent(EmbeddedServletContainerInitializedEvent embeddedServletContainerInitializedEvent) {
        logger.info("Port " + embeddedServletContainerInitializedEvent.getApplicationContext().getEmbeddedServletContainer().getPort());
        try {
           logger.info("HOST Address " + InetAddress.getLocalHost().getHostAddress());
            logger.info("Host Name " + InetAddress.getLocalHost().getHostName());
        } catch (UnknownHostException e) {

        }
    }
}

1 Ответ

3 голосов
/ 11 июля 2019

Возможно, потому что вы скопировали / вставили некоторый код, который был написан для Spring Boot 1.x, когда вы используете Spring Boot 2.x, где этот класс был удален.

Попробуйте использовать ServletWebServerInitializedEvent и port = event.getWebServer().getPort().

См. https://self -learning-java-tutorial.blogspot.com / 2018/07 / spring-boot-get-port-of-spring-boot.html для разных способов получения порта сервера.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...