程序包com.sun.image.codec.jpeg不存在
来源:互联网 发布:好玩不费钱的游戏知乎 编辑:程序博客网 时间:2024/05/18 02:42
转自:http://tjmljw.iteye.com/blog/1939973
一些老的Java代码在JDK1.7下编译会报错,比如这个:程序包com.sun.image.codec.jpeg不存在。
[javac] D:\work\mpa\hyjc2\src\hyjc\image\ImageUtil.java:87: 错误: 找不到符号
[javac] JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out);
[javac] ^
[javac] 符号: 类 JPEGImageEncoder
因为这个 JPEGImageEncoder是sun公司的私有实现。
一般出现在这样的Java代码段:
[javac] D:\work\mpa\hyjc2\src\hyjc\image\ImageUtil.java:87: 错误: 找不到符号
[javac] JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out);
[javac] ^
[javac] 符号: 类 JPEGImageEncoder
因为这个 JPEGImageEncoder是sun公司的私有实现。
一般出现在这样的Java代码段:
- FileOutputStream out = new FileOutputStream(dstName);
- JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out);
- encoder.encode(dstImage);
应该改成这样的Java代码:
- String formatName = dstName.substring(dstName.lastIndexOf(".") + 1);
- //FileOutputStream out = new FileOutputStream(dstName);
- //JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out);
- //encoder.encode(dstImage);
- ImageIO.write(dstImage, /*"GIF"*/ formatName /* format desired */ , new File(dstName) /* target */ );
这样就没有问题了,因为都使用统一的ImageIO进行图像格式文件的读写,没有必要使用过时的实现类JPEGImageEncoder类。
因为网上很多文章在讲这个问题【程序包com.sun.image.codec.jpeg不存在】的时候,都是说什么rt.jar的问题,都没有说到点子上,所以特地发表出来,希望对大家有所帮助。
注意一般处理图像格式时,使用了下面的类。
- import java.awt.image.BufferedImage;
- //import com.sun.image.codec.jpeg.JPEGCodec;
- //import com.sun.image.codec.jpeg.JPEGImageEncoder;
- import javax.imageio.ImageIO;
写成一个方法:
// 2013.05.04
- static void saveImage(BufferedImage dstImage, String dstName) throws IOException {
- String formatName = dstName.substring(dstName.lastIndexOf(".") + 1);
- //FileOutputStream out = new FileOutputStream(dstName);
- //JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out);
- //encoder.encode(dstImage);
- ImageIO.write(dstImage, /*"GIF"*/ formatName /* format desired */ , new File(dstName) /* target */ );
- }
1 0
- 程序包com.sun.image.codec.jpeg不存在
- 程序包com.sun.image.codec.jpeg不存在
- 程序包com.sun.image.codec.jpeg不存在
- maven 程序包com.sun.image.codec.jpeg不存在的解决方案
- 程序包com.sun.image.codec.jpeg不存在解决方法
- 程序包com.sun.image.codec.jpeg不存在 的解决办法
- 【javaee】maven:程序包com.sun.image.codec.jpeg不存在
- maven 程序包com.sun.image.codec.jpeg不存在的解决方案
- 程序包com.sun.image.codec.jpeg不存在’错误
- 程序包com.sun.image.codec.jpeg不存在 问题的完美解决
- 程序包com.sun.image.codec.jpeg不存在 问题的完美解决
- cloudstack源码部署时提示程序包com.sun.image.codec.jpeg不存在
- 程序包com.sun.image.codec.jpeg不存在 问题的完美解决
- maven 程序包com.sun.image.codec.jpeg不存在 问题的完美解决
- 程序包com.sun.image.codec.jpeg不存在 问题的完美解决
- maven管理项目时,启动项目报:程序包com.sun.image.codec.jpeg不存在
- maven下面编译失败,失败提示信息为:程序包com.sun.image.codec.jpeg不存在
- 程序包com.sun.image.codec.jpeg不存在 问题的完美解决
- java.lang.IllegalStateException: Couldn't read row 0, col 1 from CursorWindow.异常
- 百度API的使用
- Activity
- JAVA标准I/0详解
- 网站推广要做好计划
- 程序包com.sun.image.codec.jpeg不存在
- poj 1410 Intersection
- opencv中创建滚动条浏览大图
- 快速删除卸载win7系统中过期的驱动和设备
- 康托展开和逆康托展开
- 详细解读Windows8.1 Update中的WIMBoot新特性
- js字符串转日期格式
- 四月,谁偷走了桃花红
- 世界上最简单系统安装方法(适合XP升级win7系统)