java获取错误为sun。杂项。修改库时无法解决不安全问题
我正在为我的项目开发一个安卓 sdk,为此我使用google-http-java-client
在sdk中。
我想在google-http-java-client
中做一些更改,以便在我的应用程序中使用它。
例如,我想在com.google.api.client.http.HttpHeaders
中添加一些自定义标题。为此,我提取了源代码,但我在com.google.common.primitives.UnsignedBytes
as中得到了一个错误
import sun.misc.Unsafe cannot be resolved.
那么有没有其他方法来修改这个库
# 1 楼答案
你依赖的是Oracle/Sun JDK附带的东西,而不是谷歌提供的。简单回答:不要那样做。详细回答:见'Why Developers Should Not Write Programs That Call 'sun' Packages'
# 2 楼答案
当然。
UnsafeComparator
使用的Unsafe
在android中不在默认类路径1上,但也有作为备用项提供的PureJavaComparator
。删除处理Unsafe
的整个部分就足够了,因为在getBestComparator()
中,可以通过其名称查找它,如果出现异常,则使用回退1我以为它在安卓系统中不存在,但我相信凯文是这么说的。无论如何,说它不在默认类路径上肯定是正确的(不管它是否存在)