Tomcat 7 注释扫描器和带有 -parameters 编译器标志异常的 JDK 8 [英] Tomcat 7 Annotation scanner and JDK 8 with -parameters compiler flag exceptions
问题描述
我正在使用带有 -parameters 标志的 JDK 8 编译我的类文件,该标志保留参数名称并通过反射使它们可用.Tomcat 7 似乎对我的类文件有问题.
I am compiling my classfiles with JDK 8 with the -parameters flag which preserves the parameter names and makes them available via reflection. Tomcat 7 seems to have issues with my class files.
Aug 13, 2014 8:31:32 AM org.apache.catalina.startup.ContextConfig processAnnotationsFile
SEVERE: Unable to process file [/home/rex/apache-tomcat-7.0.54/webapps/ROOT/WEB-INF/classes/mod/test/TestData.class] for annotations
java.io.EOFException
at java.io.DataInputStream.readUnsignedShort(DataInputStream.java:340)
at org.apache.tomcat.util.bcel.classfile.Utility.swallowMethodParameters(Utility.java:797)
at org.apache.tomcat.util.bcel.classfile.Attribute.readAttribute(Attribute.java:171)
at org.apache.tomcat.util.bcel.classfile.FieldOrMethod.<init>(FieldOrMethod.java:57)
at org.apache.tomcat.util.bcel.classfile.Method.<init>(Method.java:71)
at org.apache.tomcat.util.bcel.classfile.ClassParser.readMethods(ClassParser.java:267)
at org.apache.tomcat.util.bcel.classfile.ClassParser.parse(ClassParser.java:127)
at org.apache.catalina.startup.ContextConfig.processAnnotationsStream(ContextConfig.java:2058)
at org.apache.catalina.startup.ContextConfig.processAnnotationsFile(ContextConfig.java:2033)
at org.apache.catalina.startup.ContextConfig.processAnnotationsFile(ContextConfig.java:2026)
at org.apache.catalina.startup.ContextConfig.processAnnotationsFile(ContextConfig.java:2026)
at org.apache.catalina.startup.ContextConfig.webConfig(ContextConfig.java:1291)
at org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:876)
at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:374)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
我使用的是 Tomcat 7.0.54 和 JDK 8u5 x64任何帮助将不胜感激:)
I am using Tomcat 7.0.54 and JDK 8u5 x64 Any assistance will be much appreciated :)
推荐答案
已确认在Tomcat 7.0.56中修复
Confirmed to be fixed in Tomcat 7.0.56
查看 Tomcat 7.0.56 的更新日志 http://tomcat.apache.org/tomcat-7.0-doc/changelog.html
See changelog for Tomcat 7.0.56 http://tomcat.apache.org/tomcat-7.0-doc/changelog.html
也在本地进行了测试,它解决了我的问题
Also tested this locally and it fixed my problems
这篇关于Tomcat 7 注释扫描器和带有 -parameters 编译器标志异常的 JDK 8的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!