背景介紹
- 接手了一個老系統
- 之前啟動正常的,忽然啟動不了了
由於線上生產服務器出現了一點問題,導致一些服務需要重啟,也包括這次啟動報錯的 jar 包。
首先要說明一下,這個 jar 包之前是一直正常運行的,只是剛剛重啟的時候報錯了,所以當時也非常意外,啟動之后我沒看日志,因為我認為肯定沒問題的,誰知道還是訪問不到,於是就趕緊去查日志,也就發現了文章標題的這個錯誤:

重復試了幾次都是相同的問題,於是趕緊在本地調試一下 master 分支的代碼,我可以確定的是之前上線的時候是一切正常的,但是這時候本地也無法啟動代碼了,真是非常的意外,一時間也沒想到什么問題。
解決過程
網上搜了一下,發現大部分的情況是自己代碼寫錯了,不過我這份代碼我是可以確定是完全正常的,所以就沒再繼續在網上看問題了,想了一下,感覺是不是和數據庫之類的連接有關,不然不會無緣無故的啟動不了。
MySQL 是第三方的,正常的。
Elastic Search 是另外一台服務器,也是正常的。
最后想到了應該是 Redis 服務器,因為是剛加的模塊,所以暫時還並沒有使用阿里雲或者騰訊雲的 Redis 服務。
於是趕緊去啟動了 Redis 服務,因為服務器重啟的原因,而且 Redis 服務也沒有添加到自啟動中,所以在一開始也沒想到是這個問題,之后再去啟動 jar 包,一切正常了。
小總結
這是個小問題,前前后后花了不到 10 分鍾,只是一開始沒想到這里。
這里也就是做個簡單的記錄,如果有朋友也遇到這個問題,可以嘗試以下兩個方向去找問題。
- 代碼是否有問題
這個通過本地的控制台日志就看得出來,如果自己寫錯了,立刻改掉即可。
- 連接是否正常
比如 MySQL 連接、es 連接、Redis 連接等等,這些問題可能會忽略,所以你也可以去看一下。
推薦一下本人近期維護的開源項目:

Spring Boot 開源電商項目(含商城端和后台管理系統):https://github.com/newbee-ltd/newbee-mall
Spring Boot + Vue 前后端分離商城項目:https://github.com/newbee-ltd/newbee-mall-vue-app
除注明轉載/出處外,皆為作者原創,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文鏈接,否則保留追究法律責任的權利。
