- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我收到一个错误,但我完全不知道如何修复它。环顾 stackoverflow,这个错误似乎与损坏的文件或在不兼容的 Java 版本中编译的类有关。这是我一直在研究的问题之一:Causes of getting a java.lang.VerifyError
WARNING: Error for /clearnlp
java.lang.VerifyError: Inconsistent stackmap frames at branch target 60
Exception Details:
Location:
edu/emory/clir/clearnlp/util/DSUtils.createStringHashMap(Ljava/io/InputStream;Ledu/emory/clir/clearnlp/util/CharTokenizer;Z)Ljava/util/Map; @60: aload_1
Reason:
Type top (current frame, locals[5]) is not assignable to 'java/lang/String' (stack map, locals[5])
Current Frame:
bci: @39
flags: { }
locals: { 'java/io/InputStream', 'edu/emory/clir/clearnlp/util/CharTokenizer', integer, 'java/io/BufferedReader', 'java/util/Map', top, 'java/lang/String' }
stack: { integer }
Stackmap Frame:
bci: @60
flags: { }
locals: { 'java/io/InputStream', 'edu/emory/clir/clearnlp/util/CharTokenizer', integer, 'java/io/BufferedReader', 'java/util/Map', 'java/lang/String' }
stack: { }
Bytecode:
0x0000000: bb00 5159 bb00 6f59 2ab7 0074 b700 774e
0x0000010: bb00 8a59 0312 8c12 0b12 0db8 0013 b700
0x0000020: 8d3a 04a7 0045 1c99 0015 1905 b600 323a
0x0000030: 0519 05b6 0036 9900 06a7 002f 2b19 0503
0x0000040: 1295 120b 120d b800 13b6 0099 3a06 1904
0x0000050: 1906 0332 1906 0432 0312 9b12 0b12 0db8
0x0000060: 0013 b900 9f03 0057 2db6 005c 593a 05c7
0x0000070: ffb7 a700 0a3a 0719 07b6 0061 1904 b0
Exception Handler Table:
bci [35, 114] => handler: 117
Stackmap Table:
full_frame(@38,{Object[#143],Object[#145],Integer,Object[#81],Object[#147],Top,Object[#40]},{})
full_frame(@60,{Object[#143],Object[#145],Integer,Object[#81],Object[#147],Object[#40]},{})
chop_frame(@104,1)
same_locals_1_stack_item_frame(@117,Object[#71])
same_frame(@124)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:264)
at com.google.appengine.tools.development.agent.runtime.RuntimeHelper.checkRestricted(RuntimeHelper.java:70)
at com.google.appengine.tools.development.agent.runtime.Runtime.checkRestricted(Runtime.java:65)
at edu.emory.clir.clearnlp.coreference.sieve.SpeakerIdentification.<init>(SpeakerIdentification.java:24)
at edu.emory.clir.clearnlp.coreference.config.SieveSystemCongiuration.loadDefaultSieves(SieveSystemCongiuration.java:63)
at edu.drexel.gameailab.ClearNLPServlet.doGet(ClearNLPServlet.java:66)
at edu.drexel.gameailab.ClearNLPServlet.doPost(ClearNLPServlet.java:44)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
为了消除此类错误,我多次清理了该项目,删除了我找到的每个 .class 文件。将所有依赖项 (JAR) 更新到最新版本,对于更晦涩的 JAR,我无法找到新版本,因为我跟踪了源代码,并将其与源代码一起转储以确保它由我的 JVM 再次编译。
关于设置,这是使用 servlet (Jetty) 和 Google App Engine 的clearnlp 解析器项目的 Web 界面。我知道GAE有一些限制,而且我已经重写了文件访问部分,这会很麻烦。我已经在 stanford corenlp 上完成了相同的过程,并且重写后没有任何问题。
at edu.emory.clir.clearnlp.coreference.sieve.SpeakerIdentification.<init>(SpeakerIdentification.java:24)
正在初始化一些集合:private final Set<String> firstPersonSingularPronouns = DSUtils.toHashSet("i", "me", "my", "mine");
下面是 DSUtils.java 的一些源代码:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.lang.reflect.Field;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
import java.util.Collections;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.PriorityQueue;
import java.util.Random;
import java.util.Set;
import java.util.regex.Pattern;
import edu.emory.clir.clearnlp.collection.list.FloatArrayList;
import edu.emory.clir.clearnlp.collection.pair.DoubleIntPair;
import edu.emory.clir.clearnlp.collection.pair.Pair;
public class DSUtils
{
[...]
@SuppressWarnings("unchecked")
static public <T>Set<T> toHashSet(T... items)
{
Set<T> set = new HashSet<T>(items.length);
for (T item : items) set.add(item);
return set;
}
有人对我下一步应该看什么有任何指示吗? GAE 是否损坏了类文件?我该如何解决它?我没有源代码 com.google.appengine.tools.development.agent.runtime.RuntimeHelper.checkRestricted(RuntimeHelper.java:70)
或com.google.appengine.tools.development.agent.runtime.Runtime.checkRestricted(Runtime.java:65)
,那些属于GAE SDK,我目前的版本是:1.9.30。不确定是否相关,但我在 OSX 10.11.2 上使用 Apple 的 jdk1.8.0_60。
最佳答案
对于 1.8,请执行以下操作:
关于java.lang.VerifyError : Inconsistent stackmap frames,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34821047/
我一直在努力了解晦涩的堆栈映射框架,它在一次通过中验证动态加载类的作用。 我发现非常有用的堆栈溢出答案和其他资源很少 Is there a better explanation of stack ma
我们正在使用最新的 JDK 7 (u45) 和 ProGuard 版本 4.10 最近开始我们的分发失败,在混淆之后,出现以下错误: Exception in thread "main" java.l
我们正在使用一些涉及字节码增强器的闭源商业应用程序框架。虽然字节码增强器可以处理 Java 7 字节码,但它需要在启动 JVM 时使用“-XX:-UseSplitVerifier”标志。 我们刚刚更新
我在 Web 应用程序启动时遇到异常,因为 guice 正在尝试构造提到的类。 java.lang.VerifyError: Inconsistent stackmap frames at branc
我收到一个错误,但我完全不知道如何修复它。环顾 stackoverflow,这个错误似乎与损坏的文件或在不兼容的 Java 版本中编译的类有关。这是我一直在研究的问题之一:Causes of gett
有没有办法将自定义 HttpServlet 加载到 GAE?我上传了一个在 .server 包中包含 HttpServlet 的项目,并将其添加到 web.xml... testServlet
我正在尝试使用 Spring 工具套件 3.8.3 在 Ubuntu 16.04 上。启动时出现此错误: An internal error occured during: "Initializing
我在此版本的 Java 中使用 Maven 3.2.3 davea$ echo $JAVA_HOME /Library/Java/JavaVirtualMachines/jdk1.8.0_45.jdk
我目前正在尝试使用 LLVM's stackmap feature 编写一个基本的 C 堆栈遍历器。我已经生成了堆栈图,现在我尝试将堆栈图传递给 C 函数,以便我可以使用它。 特别是,我在将 __LL
使用jdk 1.8.0_51源=1.7,目标=1.7Junit 4.6, Ant 1.8.0 发生了什么事? 所有通过 1.7 的测试现在都失败了。我需要了解以下内容: 为什么会这样? 有没有像-XX
我使用jdk 1.7,jekins,maven,当我构建项目时,单元测试失败,错误是: java.lang.VerifyError: Expecting a stackmap frame at bra
成功编译项目并使用 Maven 构建。这是我的第一个 Maven 项目。但我不知道为什么会出现以下错误。 在 tomcat 上部署 war 并点击我的 url 并在我的浏览器中显示以下错误。 java
我在 Tomcat 8 和 JDK 8 中使用 ASM 5.0.3 字节码修改库。 我的目的是将字节码成功地注入(inject)到所有的类中。但是,我遇到了以下错误: java.lang.Verify
当我尝试部署 war 文件时出现以下错误。 SEVERE: WSSERVLET11: failed to parse runtime descriptor: java.lang.VerifyError
java.lang.VerifyError: Inconsistent stackmap frames at branch target 775 Exception Details: Location
我最近将我的项目从 Java 1.7 升级到 Java 1.8。 我的一个类中的某个方法出现堆栈映射不一致的异常。 在方法中初始化一些未分配的局部变量解决了它,但有人可以解释为什么在 Java 8 中
我有一个使用 Akka 的 Java 应用程序 Typed Actors .该代码在 Eclipse 中没有错误,但是当我启动我的应用程序时它崩溃并打印此错误: Exception in thread
我有一个使用 Play Framework 1.2.X 运行的 Google App Engine 网络应用。在 Google 更改了对使用 Java 7 构建的 Web 应用程序的要求后,我一直在代
我在启动方法时不断收到错误,将一些对象从服务器返回到 ExtJs。我是 JavaEE 的新手,我想我在某个地方犯了错误。 这是来自 JBossDevStudio 控制台的日志: 11:04:37,21
升级到 JDK 1.7 后出现以下异常: java.lang.VerifyError: Expecting a stackmap frame at branch target 71 in method
我是一名优秀的程序员,十分优秀!