前言
其實在網上搜一下“同一個項目啟動多次”,有很多相關的文章。但是憂傷的是,大家在配置的時候都沒有遇到問題,而我按照大家的方法去配置完偏偏遇到問題。。。
怎么做
我做的配置和網上的配置基本相同,在idea的Edit Configurations...中配置,勾選Allow parallel run; 按理說勾選完這個之后,springboot項目的話修改server.port,應該就可以了。但是我的不行。。。
遇到的問題
我遇到的情況是:
- 我先使用8080端口啟動了一個項目
- 修改server.port=8081,之后我又啟動了一個項目,但是項目啟動失敗,報錯:端口已被占用。
- 我殺掉占用8081端口的應用,這個時候發生了一件對后續找問題非常有幫助的現象:當我殺掉占用8081端口的應用時,我之前啟動的那個8080端口的進程也被殺掉了。
解決方法
我開始猜測是不是修改端口的時候,因為熱部署的原因,導致第一次啟動的項目自動更新了端口,所以不管我第二次項目啟動使用哪個端口,都提示已被占用。
我搜了一下springboot項目熱部署的主流方案,開始排查自己的項目中是否有引入,果然發現了一個引入的jar(spring-boot-devtools), 我把這個jar注釋掉之后,就沒有問題了。
今日喜歡
人生終將是場單人旅途,孤獨之前是迷茫,孤獨過后是成長。