Java NoSuchMethodError:skipInputBytes

Java NoSuchMethodError:skipInputBytes,java,scala,playframework,playframework-2.1,javax.imageio,Java,Scala,Playframework,Playframework 2.1,Javax.imageio,我在JPEG上传时遇到了一个奇怪的异常。PNG很好用 play.api.Application$$anon$1: Execution exception[[RuntimeException: java.lang.NoSuchMethodError: skipInputBytes]] at play.api.Application$class.handleError(Application.scala:289) ~[play_2.10.jar:2.1.1] at play.api.

我在JPEG上传时遇到了一个奇怪的异常。PNG很好用

play.api.Application$$anon$1: Execution exception[[RuntimeException: java.lang.NoSuchMethodError: skipInputBytes]]
    at play.api.Application$class.handleError(Application.scala:289) ~[play_2.10.jar:2.1.1]
    at play.api.DefaultApplication.handleError(Application.scala:383) [play_2.10.jar:2.1.1]
    at play.core.server.netty.PlayDefaultUpstreamHandler$$anonfun$handleAction$1$4$$anonfun$apply$28.apply(PlayDefaultUpstreamHandler.scala:403) [play_2.10.jar:2.1.1]
    at play.core.server.netty.PlayDefaultUpstreamHandler$$anonfun$handleAction$1$4$$anonfun$apply$28.apply(PlayDefaultUpstreamHandler.scala:403) [play_2.10.jar:2.1.1]
    at scala.Option.map(Option.scala:145) [scala-library.jar:na]
    at play.core.server.netty.PlayDefaultUpstreamHandler$$anonfun$handleAction$1$4.apply(PlayDefaultUpstreamHandler.scala:403) [play_2.10.jar:2.1.1]
java.lang.RuntimeException: java.lang.NoSuchMethodError: skipInputBytes
    at play.api.mvc.ActionBuilder$$anon$1.apply(Action.scala:222) ~[play_2.10.jar:2.1.1]
    at play.api.mvc.Action$$anonfun$apply$1$$anonfun$apply$2$$anonfun$apply$5$$anonfun$apply$6.apply(Action.scala:109) ~[play_2.10.jar:2.1.1]
    at play.api.mvc.Action$$anonfun$apply$1$$anonfun$apply$2$$anonfun$apply$5$$anonfun$apply$6.apply(Action.scala:109) ~[play_2.10.jar:2.1.1]
    at play.utils.Threads$.withContextClassLoader(Threads.scala:18) ~[play_2.10.jar:2.1.1]
    at play.api.mvc.Action$$anonfun$apply$1$$anonfun$apply$2$$anonfun$apply$5.apply(Action.scala:108) ~[play_2.10.jar:2.1.1]
    at play.api.mvc.Action$$anonfun$apply$1$$anonfun$apply$2$$anonfun$apply$5.apply(Action.scala:106) ~[play_2.10.jar:2.1.1]
Caused by: java.lang.NoSuchMethodError: skipInputBytes
    at com.sun.imageio.plugins.jpeg.JPEGImageReader.initReaderIDs(Native Method) ~[na:1.7.0_15]
    at com.sun.imageio.plugins.jpeg.JPEGImageReader.<clinit>(JPEGImageReader.java:91) ~[na:1.7.0_15]
    at com.sun.imageio.plugins.jpeg.JPEGImageReaderSpi.createReaderInstance(JPEGImageReaderSpi.java:85) ~[na:1.7.0_15]
    at javax.imageio.spi.ImageReaderSpi.createReaderInstance(ImageReaderSpi.java:320) ~[na:1.7.0_15]
    at javax.imageio.ImageIO$ImageReaderIterator.next(ImageIO.java:529) ~[na:1.7.0_15]
    at javax.imageio.ImageIO$ImageReaderIterator.next(ImageIO.java:513) ~[na:1.7.0_15]
play.api.Application$$anon$1:执行异常[[RuntimeException:java.lang.NoSuchMethodError:skipInputBytes]]
在play.api.Application$class.handleError(Application.scala:289)~[play_2.10.jar:2.1.1]
play.api.DefaultApplication.handleError(Application.scala:383)[play_2.10.jar:2.1.1]
在play.core.server.netty.PlayDefaultUpstreamHandler$$anonfun$handleAction$1$4$$anonfun$apply$28.apply(playdaultUpstreamHandler.scala:403)[play_2.10.jar:2.1.1]
在play.core.server.netty.PlayDefaultUpstreamHandler$$anonfun$handleAction$1$4$$anonfun$apply$28.apply(playdaultUpstreamHandler.scala:403)[play_2.10.jar:2.1.1]
在scala.Option.map(Option.scala:145)[scala library.jar:na]
在play.core.server.netty.playdaultUpstreamHandler$$anonfun$handleAction$1$4.apply(playdaultUpstreamHandler.scala:403)[play_2.10.jar:2.1.1]
java.lang.RuntimeException:java.lang.NoSuchMethodError:skipInputBytes
在play.api.mvc.ActionBuilder$$anon$1.apply(Action.scala:222)~[play_2.10.jar:2.1.1]
在play.api.mvc.Action$$anonfun$apply$1$$anonfun$apply$2$$anonfun$apply$5$$anonfun$apply$6.apply(Action.scala:109)~[play_2.10.jar:2.1.1]
在play.api.mvc.Action$$anonfun$apply$1$$anonfun$apply$2$$anonfun$apply$5$$anonfun$apply$6.apply(Action.scala:109)~[play_2.10.jar:2.1.1]
在play.utils.Threads$.withContextClassLoader(Threads.scala:18)~[play_2.10.jar:2.1.1]
在play.api.mvc.Action$$anonfun$apply$1$$anonfun$apply$2$$anonfun$apply$5.apply(Action.scala:108)~[play_2.10.jar:2.1]
在play.api.mvc.Action$$anonfun$apply$1$$anonfun$apply$2$$anonfun$apply$5.apply(Action.scala:106)~[play_2.10.jar:2.1]
原因:java.lang.NoSuchMethodError:skipInputBytes
在com.sun.imageio.plugins.jpeg.JPEGImageReader.initReaderIDs(本机方法)~[na:1.7.0\u 15]
在com.sun.imageio.plugins.jpeg.JPEGImageReader.(JPEGImageReader.java:91)~[na:1.7.015]
在com.sun.imageio.plugins.jpeg.JPEGImageReaderSpi.createReaderInstance(JPEGImageReaderSpi.java:85)~[na:1.7.015]
在javax.imageio.spi.ImageReaderSpi.createReaderInstance(ImageReaderSpi.java:320)~[na:1.7.015]
在javax.imageio.imageio$ImageReaderIterator.next(imageio.java:529)~[na:1.7.015]
在javax.imageio.imageio$ImageReaderIterator.next(imageio.java:513)~[na:1.7.015]

我甚至不知道它在我的代码中的确切位置。有什么想法吗?

我在调查这件事。作为您,我也安装了1.7.0_15
JPEGImageReader
附带JDK,因此我检查了源代码。方法
skipInputBytes
不存在。然后我在这里安装了JDK1.7.021,该方法包含在
JPEGImageReader


因此,您只需安装新的JDK,或者配置您的IDE以使用它(如果已经安装了)。

我对此进行了一些研究。作为您,我也安装了1.7.0_15
JPEGImageReader
附带JDK,因此我检查了源代码。方法
skipInputBytes
不存在。然后我在这里安装了JDK1.7.021,该方法包含在
JPEGImageReader


因此,您只需安装新的JDK,或者配置您的IDE以使用它(如果已经安装)。

您使用的是哪个版本的imageio?java版本“1.7.0\u 21”,例外情况是您使用的是1.7.0\u 15。不管怎样,我指的是jai图书馆的版本。我认为您这里有一个额外的JAR文件,或者它是JDK附带的?我只是在项目中有IM4Java1.4.0。但我不认为它来自这个图书馆。我不知道为什么错误声称我安装了1.7.0_15。实际上它是1.7.0_21。您使用的是哪个版本的imageio?java版本“1.7.0_21”例外情况是您使用的是1.7.0_15。不管怎样,我指的是jai图书馆的版本。我认为您这里有一个额外的JAR文件,或者它是JDK附带的?我只是在项目中有IM4Java1.4.0。但我不认为它来自这个图书馆。我不知道为什么错误声称我安装了1.7.0_15。事实上是1.7.0_21。谢谢你的调查。我已经安装了Java1.7.0_21,并且该程序在任何使用Play的IDE之外运行!框架(据我所知,它没有配置JDK)。@user1625837它可能使用路径上的JDK。打开命令行并键入
java-version
。如何运行应用程序?java-version java version“1.7.0_21”OpenJDK运行时环境(IcedTea 2.3.9)(7u21-2.3.9-0ubuntu0.12.04.1)OpenJDK 64位服务器虚拟机(构建23.7-b01,混合模式)要运行应用程序,请键入play-2.1.1/play~run@user1625837您正在使用OpenJDK,可能它不包括最新版本的
JPEGImageReader
。感谢您的调查。我已经安装了Java1.7.0_21,并且该程序在任何使用Play的IDE之外运行!框架(据我所知,它没有配置JDK)。@user1625837它可能使用路径上的JDK。打开命令行并键入
java-version
。如何运行应用程序?java-version java version“1.7.0_21”OpenJDK运行时环境(IcedTea 2.3.9)(7u21-2.3.9-0ubuntu0.12.04.1)OpenJDK 64位服务器虚拟机(构建23.7-b01,混合模式)要运行应用程序,请键入play-2.1.1/play~run@user1625837您正在使用OpenJDK,可能它不包括最新版本的
JPEGImageReader