記一次java.lang.NoClassDefFoundError異常


前陣子做了個評論過濾敏感詞的功能,本地測試沒有任何問題,然后就部署到線上服務器,通知相關人員線上測試。大約過了十來天,那貨和我說接口出問題了,當時一臉懵逼,用了十來天突然出問題了???好吧,出問題了咱就解決吧,於是調用線上接口看什么問題。java.lang.NoClassDefFoundError: Could not initialize class???什么鬼,不能初始化類,就一個簡簡單單的過濾敏感詞的工具類咋出問題了,工具類是用static靜態塊初始化數據,然后方法都是static方法方便調用,居然出問題了,那我就new一下再調用吧,於是就傳到線上服務器試試。第一次調用繼續報錯:java.lang.ExceptionInInitializerError。。依舊是初始化失敗,再次調用就又回到了java.lang.NoClassDefFoundError: Could not initialize class異常。

然后繼續分析,咋過了十來天才出問題,還以為是啥靈異事件,原來是那貨沒線上測試。。。雖然過了十來天,不過這么個簡單的東西也不用花時間去重新梳理邏輯問題,最終將問題鎖定到了讀取敏感詞文件上。敏感詞文件是網上找來的,文件名都是中文,初始化詞庫是通過遍歷文件夾中的文件獲取,雖然本地測試是正常,但是到服務器上因為環境問題不同,不知道是不是讀取文件名匹配文件出錯了。於是就把文件名全部改成了拼音(英文水平有限,還是拼音簡單o(╯□╰)o),一試,正常。。。完美解決。使用中文要慎重吖!!!!!


免責聲明!

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



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