Javax.imageio RawImageInputStream的JAI ImageIO NoClassDefFoundError

Javax.imageio RawImageInputStream的JAI ImageIO NoClassDefFoundError,javax.imageio,jai,Javax.imageio,Jai,我对这个问题很困惑。我在jai imageio core上使用的是1.3.0版本,请检查下面的依赖关系,我完全不知道如何从jar中找出一个类文件(RawImageReaderSpi)可以加载到JVM中,但RawImageInputStream没有加载 我已经在Tomcat7容器中部署了SpringBootWeb服务 这个问题会随机出现,我注意到当我重新启动TC容器并部署新版本的服务时,这个问题会间歇性出现 非常感谢任何潜在客户。 我花了一天的时间试图找出问题所在,结果觉得自己很愚蠢 <de

我对这个问题很困惑。我在jai imageio core上使用的是1.3.0版本,请检查下面的依赖关系,我完全不知道如何从jar中找出一个类文件(RawImageReaderSpi)可以加载到JVM中,但RawImageInputStream没有加载

我已经在Tomcat7容器中部署了SpringBootWeb服务

这个问题会随机出现,我注意到当我重新启动TC容器并部署新版本的服务时,这个问题会间歇性出现

非常感谢任何潜在客户。

我花了一天的时间试图找出问题所在,结果觉得自己很愚蠢

<dependency>
    <groupId>com.github.jai-imageio</groupId>
    <artifactId>jai-imageio-core</artifactId>
    <version>1.3.0</version>
</dependency>

<dependency>
    <groupId>com.github.jai-imageio</groupId>
    <artifactId>jai-imageio-jpeg2000</artifactId>
    <version>1.3.0</version>
</dependency>

com.github.jai-imageio
jai图像核心
1.3.0
com.github.jai-imageio
jai-imageio-jpeg2000
1.3.0
java.lang.NoClassDefFoundError:com/github/jaimageIO/stream/RawImageInputStream 在com.github.jaimageio.impl.plugins.raw.rawmagereaderspi.canDecodeInput(rawmagereaderspi.java:102)~[jai-imageio-core-1.3.0.jar:1.3.0] 在javax.imageio.imageio$CanDecodeInputFilter.filter(imageio.java:567)~[na:1.8.0\u 121] 在javax.imageio.spi.filterierator.advance(ServiceRegistry.java:821)~[na:1.8.0121] 在javax.imageio.spi.Filtererator.(ServiceRegistry.java:815)~[na:1.8.0_121] 在javax.imageio.spi.ServiceRegistry.getServiceProviders(ServiceRegistry.java:516)~[na:1.8.0_121] 在javax.imageio.imageio.getImageReaders(imageio.java:646)~[na:1.8.0_121] 在javax.imageio.imageio.read(imageio.java:1438)~[na:1.8.0_121] 在javax.imageio.imageio.read(imageio.java:1352)~[na:1.8.0_121] 在我的package.a.b(a.java:155)~[classes/:na] 在我的package.a.b(a.java:181)~[classes/:na] 在我的package.a.b(a.java:84)~[classes/:na] 在我的包.a$$FastClassBySpringCGLIB$$5f66283f.invoke()~[spring-core-4.1.3.RELEASE.jar:na] 在org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204)~[spring-core-4.1.3.RELEASE.jar:4.1.3.RELEASE] 在org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:717)~[spring-aop-4.1.3.RELEASE.jar:4.1.3.RELEASE] 在org.springframework.aop.framework.ReflectiveMethodInvocation.procedue(ReflectiveMethodInvocation.java:157)~[spring-aop-4.1.3.RELEASE.jar:4.1.3.RELEASE] 在org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:99)~[spring-tx-4.1.3.RELEASE.jar:4.1.3.RELEASE] 在org.springframework.transaction.interceptor.TransactionSpectSupport.invokeWithinTransaction(TransactionSpectSupport.java:267)~[spring-tx-4.1.3.RELEASE.jar:4.1.3.RELEASE] 在org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96)~[spring-tx-4.1.3.RELEASE.jar:4.1.3.RELEASE] 在org.springframework.aop.framework.ReflectiveMethodInvocation.procedue(ReflectiveMethodInvocation.java:179)~[spring-aop-4.1.3.RELEASE.jar:4.1.3.RELEASE] 在org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:653)~[spring-aop-4.1.3.RELEASE.jar:4.1.3.RELEASE] 在我的包中.a$$EnhancerBySpringCGLIB$$dfc04a57.b()~[spring-core-4.1.3.RELEASE.jar:na] 在我的package.a.b(c.java:165)~[classes/:na] 在我的包中.a$$FastClassBySpringCGLIB$$67dbe4b2.invoke()~[spring-core-4.1.3.RELEASE.jar:na] 在org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204)~[spring-core-4.1.3.RELEASE.jar:4.1.3.RELEASE] 在org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:717)~[spring-aop-4.1.3.RELEASE.jar:4.1.3.RELEASE] 在org.springframework.aop.framework.ReflectiveMethodInvocation.procedue(ReflectiveMethodInvocation.java:157)~[spring-aop-4.1.3.RELEASE.jar:4.1.3.RELEASE] 在org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:99)~[spring-tx-4.1.3.RELEASE.jar:4.1.3.RELEASE] 在org.springframework.transaction.interceptor.TransactionSpectSupport.invokeWithinTransaction(TransactionSpectSupport.java:267)~[spring-tx-4.1.3.RELEASE.jar:4.1.3.RELEASE] 在org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96)~[spring-tx-4.1.3.RELEASE.jar:4.1.3.RELEASE] 在org.springframework.aop.framework.ReflectiveMethodInvocation.procedue(ReflectiveMethodInvocation.java:179)~[spring-aop-4.1.3.RELEASE.jar:4.1.3.RELEASE] 在org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:653)~[spring-aop-4.1.3.RELEASE.jar:4.1.3.RELEASE] 在我的包.a$$EnhancerBySpringCGLIB$$d153236a.processApprovedApplications()~[spring-core-4.1.3.RELEASE.jar:na] 在sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)~[na:1.8.0_121] 在sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)~[na:1.8.0121] 在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)~[na:1.8.0121] 在java.lang.reflect.Method.invoke(Method.java:498)~[na:1.8.0_121] 在org.springframework.scheduling.support.ScheduledMethodRunnable.run(ScheduledMethodRunnable.java:65)~[spring-context-4.1.3.RELEASE.jar:4.1.3.RELEASE] 在org.springframework.scheduling.support.DelegatingErrorHandlingRunnable.run(DelegatingErrorHandlingRunnable.java:54)~[spring-context-4.1.3.RELEASE.jar:4.1.3.RELEASE] 位于org.springframework.scheduling.concurrent.ReschedulingRunnable.run(ReschedulingRunnable.java:81)[spring-context-4.1.3.RELEASE.jar:4.1.3.RELEASE] 在java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)[na:1.8.0_121] 在java.util.concurrent.FutureTask.run(FutureTask.java: java.lang.NoClassDefFoundError: com/github/jaiimageio/stream/RawImageInputStream at com.github.jaiimageio.impl.plugins.raw.RawImageReaderSpi.canDecodeInput(RawImageReaderSpi.java:102) ~[jai-imageio-core-1.3.0.jar:1.3.0] at javax.imageio.ImageIO$CanDecodeInputFilter.filter(ImageIO.java:567) ~[na:1.8.0_121] at javax.imageio.spi.FilterIterator.advance(ServiceRegistry.java:821) ~[na:1.8.0_121] at javax.imageio.spi.FilterIterator.(ServiceRegistry.java:815) ~[na:1.8.0_121] at javax.imageio.spi.ServiceRegistry.getServiceProviders(ServiceRegistry.java:516) ~[na:1.8.0_121] at javax.imageio.ImageIO.getImageReaders(ImageIO.java:646) ~[na:1.8.0_121] at javax.imageio.ImageIO.read(ImageIO.java:1438) ~[na:1.8.0_121] at javax.imageio.ImageIO.read(ImageIO.java:1352) ~[na:1.8.0_121] at my-package.a.b(a.java:155) ~[classes/:na] at my-package.a.b(a.java:181) ~[classes/:na] at my-package.a.b(a.java:84) ~[classes/:na] at my-package.a$$FastClassBySpringCGLIB$$5f66283f.invoke() ~[spring-core-4.1.3.RELEASE.jar:na] at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204) ~[spring-core-4.1.3.RELEASE.jar:4.1.3.RELEASE] at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:717) ~[spring-aop-4.1.3.RELEASE.jar:4.1.3.RELEASE] at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157) ~[spring-aop-4.1.3.RELEASE.jar:4.1.3.RELEASE] at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:99) ~[spring-tx-4.1.3.RELEASE.jar:4.1.3.RELEASE] at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:267) ~[spring-tx-4.1.3.RELEASE.jar:4.1.3.RELEASE] at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96) ~[spring-tx-4.1.3.RELEASE.jar:4.1.3.RELEASE] at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179) ~[spring-aop-4.1.3.RELEASE.jar:4.1.3.RELEASE] at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:653) ~[spring-aop-4.1.3.RELEASE.jar:4.1.3.RELEASE] at my-package.a$$EnhancerBySpringCGLIB$$dfc04a57.b() ~[spring-core-4.1.3.RELEASE.jar:na] at my-package.a.b(c.java:165) ~[classes/:na] at my-package.a$$FastClassBySpringCGLIB$$67dbe4b2.invoke() ~[spring-core-4.1.3.RELEASE.jar:na] at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204) ~[spring-core-4.1.3.RELEASE.jar:4.1.3.RELEASE] at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:717) ~[spring-aop-4.1.3.RELEASE.jar:4.1.3.RELEASE] at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157) ~[spring-aop-4.1.3.RELEASE.jar:4.1.3.RELEASE] at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:99) ~[spring-tx-4.1.3.RELEASE.jar:4.1.3.RELEASE] at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:267) ~[spring-tx-4.1.3.RELEASE.jar:4.1.3.RELEASE] at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96) ~[spring-tx-4.1.3.RELEASE.jar:4.1.3.RELEASE] at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179) ~[spring-aop-4.1.3.RELEASE.jar:4.1.3.RELEASE] at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:653) ~[spring-aop-4.1.3.RELEASE.jar:4.1.3.RELEASE] at my-package.a$$EnhancerBySpringCGLIB$$d153236a.processApprovedApplications() ~[spring-core-4.1.3.RELEASE.jar:na] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_121] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_121] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_121] at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_121] at org.springframework.scheduling.support.ScheduledMethodRunnable.run(ScheduledMethodRunnable.java:65) ~[spring-context-4.1.3.RELEASE.jar:4.1.3.RELEASE] at org.springframework.scheduling.support.DelegatingErrorHandlingRunnable.run(DelegatingErrorHandlingRunnable.java:54) ~[spring-context-4.1.3.RELEASE.jar:4.1.3.RELEASE] at org.springframework.scheduling.concurrent.ReschedulingRunnable.run(ReschedulingRunnable.java:81) [spring-context-4.1.3.RELEASE.jar:4.1.3.RELEASE] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [na:1.8.0_121] at java.util.concurrent.FutureTask.run(FutureTask.java:266) [na:1.8.0_121] at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) [na:1.8.0_121] at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) [na:1.8.0_121] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [na:1.8.0_121] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [na:1.8.0_121]
servletContext.addListener(IIOProviderContextListener.class);