Loading

图片上传报错 java.lang.IllegalArgumentException: image == null!

记录一次报错

java.lang.IllegalArgumentException: image == null!

jdk版本:openjdk 1.8

问题复现:使用  ImageIO.read(new FileInputStream(imgPath))  进行图片读取时,遇到  部分.jpg 格式图片上传 出现以上报错

问题分析:这些图片文件后缀是jpg,但是实际格式是webp,webp是谷歌2010新出的图片类型,java8 无法读取,正常的方式读取就会报空。

解决方法:引入webp-imageio-core-0.1.0.jar,正常读取。

        <dependency>
            <groupId>com.github.nintha</groupId>
            <artifactId>webp-imageio-core</artifactId>
            <version>0.1.0</version>
            <scope>system</scope>
            <systemPath>${project.basedir}/lib/webp-imageio-core-0.1.0.jar</systemPath>
        </dependency>

maven中央仓库中没有发布该jar包,需要进行手动引入。否则会报错webp-imageiodll: Can't find dependent libraries

github 下载地址:https://github.com/nintha/webp-imageio-core/releases

出现Exception in thread "main" java.lang.UnsatisfiedLinkError: com.luciad.imageio.webp.WebPDecoderOptions.createDecoderOptions()J

可尝试更换其他版本jar包,第一次使用最新1.3版本,出现该错误,修改为0.1.0,错误解决。

 

 

 参考:https://segmentfault.com/a/1190000016324137?utm_source=sf-related

posted @ 2023-01-16 15:56  李旭2018  阅读(2924)  评论(0编辑  收藏  举报