記錄一次好玩的錯誤-Java代碼過長(java:[255,21] code too large)


  只是單純的想記錄一下,你可能做程序員一輩子都無法遇到的一個問題!!! 哈哈哈

一、問題的描述

  這個問題是昨天在做導出的時候遇到的,本來是在一個方法中,寫一下導出的業務代碼,我也按照其他的導出一樣,繼續在后面進行代碼的編寫,寫了3、4個小時之后,終於寫完了,一身輕松,准備啟動項目進行一番測試,但是奇怪的事情發生了,不僅項目沒有啟動起來,連編譯都沒通過,哈哈,很尷尬的樣子,具體idea中的控制台描述的問題的文字是這樣子的:

這是什么鬼報錯信息???

二、尋找問題的原因

直接百度一頓操作,暫時確定了兩種原因:(謝謝百度and知乎)

1、一個方法編譯后的字節碼不能超過64KB大小(jdk規定的)

具體詳情,請看萬能的知乎:

https://www.zhihu.com/question/396024065

2、idea 本身的限制

是否可以改一下idea本身的配置文件,是這個原因嗎?我試了一下,並沒有什么用啊!

具體方法如下:

https://zhidao.baidu.com/question/493644378928628092.html

3、一頓亂拳

雖然我 看了一下這個方法的確很長很長,但是我本身是不太相信一個方法真的是可以寫到編譯之后64k的大小,我呆着懷疑的態度提交了代碼,想着在測試環境試一下,到底能不能編譯打包成功,然而結果是跟idea中是同樣的報錯信息,具體如圖:

三、終結解決方案

無奈,真的是這個方法過長導致的,只能優化一下代碼,把這個方法簡短一點,是誰寫出這樣的代碼來,不想活了吧,哈哈哈,還是好好學一下設計模式相關的,寫出的代碼優雅一點!

 


免責聲明!

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



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