spring JTable 创建抛出异常

spring JTable creation throwing exception

我有一个 spring 配置,它可靠地抛出以下配置文件的异常:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xmlns:aop="http://www.springframework.org/schema/aop"
 xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd"
 default-init-method="init">

 <!-- GUI tables --> 

 <bean id="basket.summary.table.model" class="javax.swing.table.DefaultTableModel" />
 
 <bean id="basket.summary.table" class="javax.swing.JTable">
  <constructor-arg ref="basket.summary.table.model" />
 </bean>

</beans>

我得到的异常如下:

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 2890
 at org.springframework.asm.ClassReader.readClass(Unknown Source)
 at org.springframework.asm.ClassReader.accept(Unknown Source)
 at org.springframework.asm.ClassReader.accept(Unknown Source)
 at org.springframework.core.LocalVariableTableParameterNameDiscoverer.inspectClass(LocalVariableTableParameterNameDiscoverer.java:114)
 at org.springframework.core.LocalVariableTableParameterNameDiscoverer.getParameterNames(LocalVariableTableParameterNameDiscoverer.java:86)
 at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:193)
 at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1035)
 at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:939)
 at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:485)
 at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
 at org.springframework.beans.factory.support.AbstractBeanFactory.getObject(AbstractBeanFactory.java:294)
 at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:225)
 at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:291)
 at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:193)
 at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:609)
 at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:918)
 at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:469)
 at org.springframework.context.support.FileSystemXmlApplicationContext.<init>(FileSystemXmlApplicationContext.java:140)
 at org.springframework.context.support.FileSystemXmlApplicationContext.<init>(FileSystemXmlApplicationContext.java:94)
 at org.aso.algo.gui.system.GuiMain.main(GuiMain.java:39)

我觉得这个例子很简单,但我还是没弄明白是什么原因造成的。它基本上无法构造 JTable 对象。我试图为 constructor-arg 指定参数 class 但没有成功。

有人可以帮助我吗?肯定漏掉了一些简单的东西。

较旧的 Spring 版本与 JDK 1.8 不兼容,尤其是由于内部打包的 ASM 库不兼容。

JDK Spring 4 中添加了 1.8 支持,因此您需要升级到其中一个。