徹底解決IDEA Jrebel 錯誤找不到口令文件的問題


本來我的Jrebel也是好用的,突然就變成了這個樣子,網上針對這個問題有很多帖子,但是每次新建項目后我都需要去解決一下這個問題,這我不能忍,經過一整天的百度和測試終於找到了原因並解決這個問題,伸手黨直接滑倒頁面底部總結即可

問題描述

當使用Jrebel啟動Tomcat后(哪怕是空Tomcat)在控制台中會拋出如下異常:

經過分析日志可以看到控制台中項目名稱的位置上包含亂碼,復制亂碼之前的路徑打開資源管理器訪問一下,看到如下命名:

打開目錄后也可以找到Jrebel需要的文件,由此可知是Jrebel不能識別中文路徑名而導致的異常

解決方案1

根據問題原因結合百度上的資料很輕松的就可以得到第一個解決方案:在Jrebel啟動參數中加上UTF-8的中文字符支持即可

原作者地址:https://blog.csdn.net/weixin_44735433/article/details/107629493

解決方案2

啟動支持了中文的Jrebel后的確不會報錯,但是根據帖子的回復可以了解到,這種解決方案的弊端是Jrebel的Debug斷點失效,經本人測試后的確代碼走到斷點后不會停住,我又去百度找新的解決方案,得知除了要讓Jrebel支持中文后還需要在VM以及Tomcat中配置UTF8的編碼:

原作者地址:https://blog.csdn.net/Wang__dream/article/details/108338746

換個方式思考

第二種解決方案我沒有親自測試過,不過並沒有人回復會有其他的問題,所以我就把他粘到這里了

我沒有測試第二種解放方案,是因為我一直在想為什么IDEA會將我純英文的項目名稱以及路徑名稱重命名為中文前綴,后來我突然意識到我安裝了IDEA的中文插件,巧合的是上面出現該問題的兩篇博客的博主也是都安裝了中文插件,這樣我就可以猜想是IDEA中文插件的間接導致了Jrebel的報錯

之前在資源管理器中看到的中文命名,也在.idea → workspace.xml中找到了

假設成立!接下來我要進行實踐了,首先將中文插件禁用(禁用就好,不用卸載),然后關閉IDEA編輯器,找到項目工作空間,刪除以下三個文件:

刪除后在重新打開IDEA然后打開該項目,然后重新添加Tomcat運行環境(Add Configuration),像平常那樣直接添加就好不需要考慮字符集問題,添加Tomcat后在查看IDEA配置文件:

這里可以發現已經沒有中文命名了,然后運行Tomcat進行最后的校驗:

Tomcat啟動成功!回到之前查看中文亂碼的那個目錄中查看文件命名:

果然是IDEA中文插件搞的鬼!問題解決!

總結

根據測試我總結出兩個解決方案,第一種就是刪除中文插件,刪除工作空間的配置文件讓IDEA重新生成,就可以解決問題

如果不想拋棄IDEA中文插件的話,可以在IDEA配置生成之后,手動到.idea → workspace.xml中將中文前綴刪除掉后重啟Tomcat,Jrebel會根據刪除中文前綴后的名稱創建文件夾


免責聲明!

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



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