終於,我感受到了IDEA的強大


Java開發者千千萬,開發者用的開發工具目前主流卻只有2種:eclipse和IDEA,我入行以來一直用的eclipse,聽過IDEA很好很強大,但是也只是處於聽說的階段,
基本沒用過,自然沒怎么體會過。直到今天,我解決了一個實際問題(注意,這不是一篇安利IDEA的文章,而是介紹一個實際問題解決的過程)。

 

緣起

公司的項目都是微服務的,前后端完全分離(只是代碼分離,但是開發人員目前不分離),我負責其中2個核心工程,其中一個是剛接手的,就是它讓我遇到了一個問題。
一般我開發的時候都是先在本地將前后端調試通過后再提交代碼到git上,但是這個工程不知道為什么通過jetty:run 啟動后總是不能正常訪問,通過postman也不行,一直返回503

 

 

山重水復疑無路

這個問題,我到網上查了好久,很多人都說是后端服務問題,服務沒起來,我也這樣懷疑過,但是從console打印的log來看是正常的,把整個console從底往上翻都沒有發現報錯的堆棧信息,但是把代碼發到環境上就是ok的,看來還是本地的問題,但沒有報錯,一時半會兒也查不出來問題在哪兒。

沒辦法,只能把后端代碼寫好后,肉眼調試看看有沒有問題,沒發現問題的話就把代碼發到測試環境上,然后用postman或本地的前段代碼訪問測試環境的接口。

這樣做的缺點很明顯,就是如果有問題的話,要重新提交代碼然后重新發布環境,比較麻煩,只能臨時這么干,不是長久之計。

 

柳暗花明又一村

記得第一次提交這個工程的代碼的時候,eclipse特有的.project等文件都是之前沒有加入到ignore列表的。

基於這個,我猜想原來的開發人員會不會用的是IDEA?他之前是怎么調試的?難道沒報錯嗎?為了尋找答案,我把下載了很久但是沒怎么用過的IDEA翻了出來,導入工程並啟動該工程。發現報錯了!!!它報錯了!!!太好了,報錯了,終於找到503的問題點了。

 

對症下葯,葯到病除
根據報錯,很顯然是配置文件中少了一個配置項目,導致報錯,使本地服務沒有完全啟動,因此報503錯誤。於是我翻了下環境上的配置,copy到本地,再啟動,然后訪問,正常響應,問題解決。

完美!!!

 

打破砂鍋問到底
沒道理啊!按說eclipse啟動錯誤應該會有堆棧信息的,為什么我再console里面看不到呢?
度娘一把,最后得出結論堆棧被其他的信息沖掉了,因為eclipse默認情況下console顯示的日志行數有限制。

 

要解決問題只需把這個限制取消就行了。
於是乎,我把它取消掉然后把那個配置再刪掉,重新啟動eclipse,在長長的日志里面我發現了堆棧信息。

沒錯,就是它,那個我找了很久都沒有找到的它。
眾里尋他千百度,驀然回首,“堆棧”卻在燈火闌珊處!!!

 

 

收官
從這個問題來看,IDEA確實比eclipse更懂程序員,IDEA把報錯直接報在了啟動結束的位置,而eclipse卻在報錯之后又執行了很久並且打印了很多log信息,在一定程度上影響了我排查問題。
當然,並不是說IDEA就一定比eclipse好,我也用了很多年的eclipse了,挺好的。總體上,各有千秋吧。
以上是我的個人觀點,eclipse鐵桿粉們,求放過哦

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM