Eclipse笔记-sun.misc.BASE64Encoder找不到jar包的解决方法

泪湿孤枕 提交于 2019-12-06 01:57:43

从SVN检出新项目,在Eclipse中报错如下:

 

转:

Eclipse笔记-sun.misc.BASE64Encoder找不到jar包的解决方法

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/lewky_liu/article/details/78966854

在使用sun.misc.BASE64Encoder时报错如下:

Access restriction: The type BASE64Encoder is not accessible due to restriction on required library C:\jdk1.7.0_79\jre\lib\rt.jar
  • 1

原因与替代方案

查了下资料,这是因为BASE64Encoder/BASE64Decoder类在sun.misc包下,是sun公司的内部方法,后期有删除的潜在可能,建议使用apache commons.codec下的Base64替代。

maven依赖:

<dependency>
     <groupId>commons-codec</groupId>
     <artifactId>commons-codec</artifactId>
     <version>${commons-codec.version}</version>
</dependency>
  • 1
  • 2
  • 3
  • 4
  • 5

java代码:

Base64.encodeBase64String(...);
Base64.decodeBase64(...);
  • 1
  • 2

如果就想使用sun.misc.BASE64Encoder,也有以下的解决方法:

1、右键项目 -> 属性 -> java bulid path -> jre System Library -> access rules -> resolution选择accessible,下面填上**,最后点击确定即可
2、只需要在project build path中先移除JRE System Library,再重新添加库JRE System Library,接着重新编译后就一切正常了。
3、Windows -> Preferences -> Java -> Compiler -> Errors/Warnings ->
Deprecated and trstricted API -> Forbidden reference (access rules): -> change to warning

参考链接

https://www.cnblogs.com/phoenix-smile/p/5082786.html
http://blog.csdn.net/jbxiaozi/article/details/7351768

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!