图像处理JPEGCodec类已经从Jdk1.7移除 2014-06-16 20:01:26
分类: 架构设计与优化
著名测试工具jira在使用图像处理JPEGCodec类会报告以下信息:
我是这样用的:
FileOutputStream newimage=new FileOutputStream(img_midname); //输出到文件流
JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(newimage);
因为程序包com.sun.image.codec.jpeg不存在。
[javac] JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(newimage);
[javac] ^
[javac] 符号: 类 JPEGImageEncoder
com.sun.*, sun.* 开头的包都是 JRE 的底层类库,未被归档化,这是由于这些类都是依赖于平台的,在 Windows 平台上有这个类,在 Linux 上可能就没有这个类。
我们应该尽量少用 JRE 的底层类库:http://java.sun.com/products/jdk/faq/faq-sun-packages.html
暂时的解决办法:引入rt.jar, 再把编译时的【过期和受限的API】设为warning
但只是权宜之计,建议还是用ImageIO.write吧。