spring boot是個好東西,可以不用容器直接在main方法中啟動,而且無需配置文件,方便快速搭建環境。可是當我們要同時啟動2個springboot工程時,就會有問題,有可能會因為8080埠被第一個應用佔用而導致第二個應用無法啟動,這時就需要修改其中一個工程的啟動埠。
可以透過實作EmbeddedServletContainerCustomizer介面來實現:
publicclassApplicationextendsSpringBootServletInitializerimplementsEmbeddedServletContainerCustomizer{ @Override protectedSpringApplicationBuilderconfigure(SpringApplicationBuilderbuilder){ returnbuilder.sources(Application.class); } publicstaticvoidmain(String[]args){ SpringApplication.run(Application.class,args); } @Override publicvoidcustomize(ConfigurableEmbeddedServletContainercontainer){ container.setPort(8081); } }
PS:下面看下spring boot建立應用程式連接埠衝突8080
#如果你電腦上的8080號被其它它(如jenkins)佔用了,則執行lightsword會報以下錯誤:java.net.BindException: Address already in use......Failed to start component [Connector[HTTP/1.1-8080]]...
解決方法:在src->main->resources目錄下新建一個文件,名稱為application.properties(這是SpringBoot統一的設定檔)加了以下一行內容:(取個電腦上可用的連接埠號,如下面的9527,看過星爺電影的都懂的)server.port = 9527
再次運行即可。
以上是怎麼設定springboot啟動端口的詳細內容。更多資訊請關注PHP中文網其他相關文章!