权声明:本文为博主原创文章,未经博主允许不得转载。
spring boot是个好东西,可以不用容器直接在main方法中启动,而且无需配置文件,方便快速搭建环境。可是当我们要同时启动2个springboot工程时,就会有问题,有可能会因为8080端口被第一个应用占用而导致第二个应用无法启动,这时就需要修改其中一个工程的启动端口。
可以通过实现EmbeddedServletContainerCustomizer接口来实现:
- public class Application extends SpringBootServletInitializer implements EmbeddedServletContainerCustomizer {
- @Override
- protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
- return builder.sources(Application.class);
- }
- public static void main(String[] args) {
- SpringApplication.run(Application.class, args);
- }
- @Override
- public void customize(ConfigurableEmbeddedServletContainer container) {
- container.setPort(8081);
- }
- }