2 回答

TA貢獻(xiàn)1805條經(jīng)驗(yàn) 獲得超10個(gè)贊
我只是讓你重新考慮這個(gè)想法,它不是生產(chǎn)就緒的,需要一些改進(jìn),但你絕對(duì)可以在你的main方法中嘗試這樣的事情:
@SpringBootApplication
public class MyApplication {
public static void main(String[] args) {
SpringApplication app = new SpringApplication(MyApplication.class);
int serverPort = 8080;
do {
try {
app.setDefaultProperties( Collections.singletonMap( "server.port", Integer.toString(serverPort) ) );
app.run(args);
} catch (Exception e) {
serverPort++;
}
} while (serverPort < 9000);
}
}
您可能已經(jīng)注意到,理論上這應(yīng)該會(huì)嘗試一次又一次地設(shè)置端口,以防出現(xiàn)錯(cuò)誤。我將其限制為端口 9000,但您可以嘗試修補(bǔ)一個(gè)更適合您打算執(zhí)行的操作的解決方案,并在您的特定用例場(chǎng)景中對(duì)其進(jìn)行調(diào)整。
添加回答
舉報(bào)