检查我的 Codename One 应用程序(该应用程序已经完美运行一年多了),我发现它无法再启动。当我尝试在 Eclipse 中启动它时,我得到了以下堆栈跟踪:
Exception in thread "AWT-EventQueue-0" java.lang.VerifyError: Bad type on operand stack Exception Details: Location: javax/swing/JScrollBar.getAccessibleContext()Ljavax/accessibility/AccessibleContext; @16: putfield Reason: Type 'javax/swing/JScrollBar$AccessibleJScrollBar' (current frame, stack[1]) is not assignable to 'javax/accessibility/AccessibleContext' Current Frame: bci: @16 flags: { } locals: { 'javax/swing/JScrollBar' } stack: { 'javax/swing/JScrollBar', 'javax/swing/JScrollBar$AccessibleJScrollBar' } Bytecode: 0x0000000: 2ab4 001f c700 0f2a bb00 6259 2ab7 0063 0x0000010: b500 1f2a b400 1fb0
Stackmap Table: same_frame(@19) at com.codename1.impl.javase.JavaSEPort.(JavaSEPort.java:411) at com.codename1.impl.ImplementationFactory.createImplementation(ImplementationFactory.java:69) at com.codename1.ui.Display.init(Display.java:475) at com.codename1.impl.javase.Executor$1.run(Executor.java:112) at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:756) at java.awt.EventQueue.access$500(EventQueue.java:97) at java.awt.EventQueue$3.run(EventQueue.java:709) at java.awt.EventQueue$3.run(EventQueue.java:703) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80) at java.awt.EventQueue.dispatchEvent(EventQueue.java:726) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93) at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
现在解决问题:我没有在代码中的任何地方使用java.swing.JScrollBar
。我什至搜索了我所有的类(class)。我真的不知道如何解决这个问题。 StackTrace 甚至没有引用我编写的类,只是 Java 和 CodenameOne 类。这是 CO1 中的错误还是我的代码?
我想知道为什么在应用程序运行了一年没有出现任何故障后突然出现(没有以任何方式更新应用程序)它不再工作了。
最佳答案
关于java - 代号一 : Bad type on operand stack javax/swing/JScrollBar. getAccessibleContext(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48596841/