解決報錯:import sun.misc.BASE64Decoder無法找到

一直以來Base64算法的加密解密都是使用sun.misc包下的BASE64Encoder及BASE64Decoder來進行的。但是這個類是sun公司的內部方法,並沒有在Java API中公開過,不屬於JDK標準庫範疇,但在JDK中包含了該類,可以直接使用。但是在Eclipse和MyEclipse中直接使用,卻找不到該類。

問題描述如下圖:


第一種方法:解決方案:
第一步:在使用sun.misc包下的API的項目上右鍵選擇Build Path,選擇Configure Build Path

第二步:在Java Build Path窗口,點擊第三個選項卡Libraries,選擇JRE System Libraries,選擇第一項Access rules,點擊Edit

第三步:在彈出的窗口中點擊Add

第四步:在Resolution後面選擇Accessible選項,下面的Rule Pattern配置爲**,點擊OK即可。

第五步:點擊OK

第六步:點擊Apply,點擊OK,就會看到工作空間會進行重新導入構建。

我們再來看導入sun.misc包下的BASE64Encoder這個類,完美解決。


其餘解決方案:
也可以使用第三方提供的相應的替代的API
Apache提供的Commons Codec,簡稱CC
Bouncy Castle提供的Bouncy Castle,簡稱BC
build.gradle加入第三方依賴:


使用Gradle刷新之後:

第二種方法:

右鍵Project->Properties,選擇Java Build Path設置項,再選擇Libraries標籤,Add External Jars添加%JAVA_HOME%\jre\lib\rt.jar就可以了

如果還報錯:選擇Java Build Path設置項,再選擇Order and Export標籤,選中rt.jar,點擊右側"up",使其在JRE System Library的上面,即可生效。

最簡單的方法:下載base64的jar包導入libs中就可以了;
 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章