Invalid icc profile: duplicate sequence numbers
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Invalid icc profile: duplicate sequence numbers相关的知识,希望对你有一定的参考价值。
处理图片时报异常信息:
javax.imageio.IIOException: Invalid icc profile: duplicate sequence numbers
报异常的图片:
网上有人遇到了同样的异常信息,并使用插件解决了问题:
http://stackoverflow.com/questions/32023809/javax-imageio-iioexception-invalid-icc-profile-duplicate-sequence-numbers
TwelveMonkeys ImageIO官网地址
http://haraldk.github.io/TwelveMonkeys/#jpeg
TwelveMonkeys ImageIO is a collection of plugins and extensions for Java‘s ImageIO.
These plugins extends the number of image file formats supported in Java, using the javax.imageio.* package. The main purpose of this project is to provide support for formats not covered by the JRE itself.
TwelveMonkeys ImageIO工程主要支持了一些JRE自己没有覆盖到的图片格式。
问题解决方案
1.将相应的格式包导入到工程中,如jpeg
<dependency>
<groupId>com.twelvemonkeys.imageio</groupId>
<artifactId>imageio-jpeg</artifactId>
<version>3.0-rc5</version>
</dependency>
注意版本问题
最新版的插件需要使用jdk1.7,如<version>3.2.1</version>
而我们一般工程都还停留在jdk1.6,所以我们需要使用其早期版本如<version>3.0-rc5</version>
其实也可以使用官网提供的源代码使用1.6版本进行编译,但源码有问题,最终放弃了。
2.加载问题
加入jpeg包后,java工程main函数跑问题解决了,一切正常,但放web工程tomcat中问题依旧。
Because the ImageIO plugin registry (the IIORegistry) is "VM global", it doesn‘t by default work well with servlet contexts.
上面是插件官网的说词,需要将下面的代码加入到处理图片的地方即可。
ImageIO.scanForPlugins()
以上是关于Invalid icc profile: duplicate sequence numbers的主要内容,如果未能解决你的问题,请参考以下文章
TestFlight 'Invalid Profile' get-task-allow 标志始终为 false
Invalid JDK version in profile 'doclint-java8-disable': Unbounded range: [1.8, for project c
使用maven构建 ssm项目 tomcat7插件运行报错, Invalid byte tag in constant pool: 60