我是靠谱客的博主 坚强帽子,最近开发中收集的这篇文章主要介绍⭐springboot打包时报错⭐程序包com.sun.image.codec.jpeg不存在,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

报错信息:
在这里插入图片描述
报错原因:
JPEGCodec类在JDK1.7之后移除,使用 JDK1.8 打包时会报错。

解决方式:
代码

// 构造一个类型为预定义图像类型之一的 BufferedImage
BufferedImage tag = new BufferedImage(widthdist, heightdist, BufferedImage.TYPE_INT_RGB);
tag.getGraphics().drawImage(src.getScaledInstance(widthdist, heightdist, Image.SCALE_SMOOTH), 0, 0, null);
//创建文件输出流
FileOutputStream out = new FileOutputStream(imgdist);

//将图片按JPEG压缩,保存到out中
JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out);
encoder.encode(tag);

第一种解决办法:不使用JPEGCodec这个类

// 构造一个类型为预定义图像类型之一的 BufferedImage
BufferedImage tag = new BufferedImage(widthdist, heightdist, BufferedImage.TYPE_INT_RGB);
tag.getGraphics().drawImage(src.getScaledInstance(widthdist, heightdist, Image.SCALE_SMOOTH), 0, 0, null);
//创建文件输出流
FileOutputStream out = new FileOutputStream(imgdist);

//以这个代替掉 JPEGCodec
ImageIO.write(tag,"jpeg",out);

第二种解决办法:配置maven-compiler-plugin

<!--解决打包错 程序包com.sun.image.codec.jpeg不存在-->
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <configuration>
        <source>1.8</source>
        <target>1.8</target>
        <encoding>UTF-8</encoding>
        <compilerArguments>
            <verbose />
            <bootclasspath>${java.home}/lib/rt.jar;${java.home}/lib/jce.jar</bootclasspath>
        </compilerArguments>
    </configuration>
</plugin>
<!-- windows下用;,linux下用: -->

最后

以上就是坚强帽子为你收集整理的⭐springboot打包时报错⭐程序包com.sun.image.codec.jpeg不存在的全部内容,希望文章能够帮你解决⭐springboot打包时报错⭐程序包com.sun.image.codec.jpeg不存在所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(41)

评论列表共有 0 条评论

立即
投稿
返回
顶部