为什么我收到此错误“EmbeddedServletContainerInitiali”

我该如何解决 spring boot 中的这个错误?


我正在尝试获取端口号和主机名,但我不断收到此错误。


@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) {


        }

    }

}


蛊毒传说
浏览 141回答 1
1回答

MMMHUHU

可能是因为您在使用已删除此类的 Spring Boot 2.x 时复制/粘贴了一些为 Spring Boot 1.x 编写的代码。尝试使用ServletWebServerInitializedEvent和port = event.getWebServer().getPort()。有关获取服务器端口的不同方法,请参阅https://self-learning-java-tutorial.blogspot.com/2018/07/spring-boot-get-port-of-spring-boot.html 。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java