我正在尝试清理我的构建环境,并发现了一些关于Sun专有API使用情况的警告。
[javac] /workspace/<path-to-files>/Handler.java:18: warning: sun.net.www.protocol.http.Handler is Sun proprietary API and may be removed in a future release
[javac] public class Handler extends sun.net.www.protocol.http.Handler {
[javac]                                                       ^
[javac] /workspace/<path-to-files>/HttpClient.java:16: warning: sun.net.www.http.HttpClient is Sun proprietary API and may be removed in a future release 
[javac] public class HttpClient extends sun.net.www.http.HttpClient {
[javac]
[javac] /workspace/<path-to-files>/HttpURLConnection.java:19: warning: sun.net.www.protocol.http.HttpURLConnection is Sun proprietary API and may be removed in a future release
[javac] public class HttpURLConnection extends sun.net.www.protocol.http.HttpURLConnection {
[javac]                                                                 ^还有..。
[javac] /workspace/<path-to-files>/JavaFile.java:17: warning: sun.misc.BASE64Decoder is Sun proprietary API and may be removed in a future release
[javac] import sun.misc.BASE64Decoder;
[javac]                ^
[javac] /workspace/<path-to-files>/JavaFile.java:338: warning: sun.misc.BASE64Encoder is Sun proprietary API and may be removed in a future release
[javac]          BASE64Encoder encoder = new BASE64Encoder();
[javac]          ^有没有人能推荐一个替代这些API的好方法?或者,这些可以被官方的Java API取代吗?我意识到这些只是警告,但这是我计划解决的问题。
发布于 2012-11-20 22:51:49
不清楚为什么首先要声明自己的HttpURLConnection和Handler类-您确定要编译这些类吗?
至于Base64 --我自己也喜欢this public domain implementation。
发布于 2012-11-20 22:52:32
如果你已经写了一个http客户端,那么你已经重新发明了轮子。在apache http client中已经有一个非常好的版本了。
如果你想要Base64编码/解码,在apache commons codec中有一个类。
发布于 2012-11-20 22:51:42
Apache Commons Codec包括Base64类。
https://stackoverflow.com/questions/13475722
复制相似问题