Java 方法更换弹簧不工作

Java 方法更换弹簧不工作,java,xml,spring,Java,Xml,Spring,我正在尝试用一个新方法替换Bank类中的calcInt方法 在一个新类NewCalcInt.java中。但我不能这么做。请帮我转到 解决这个问题。我已经添加了所有JAR以及cglib-nodep-2.1.3 JAR 这是下面的代码 Bank.java package beans; public class Bank { public void deposit() { System.out.println("Deposit Method in Bank");

我正在尝试用一个新方法替换Bank类中的calcInt方法 在一个新类NewCalcInt.java中。但我不能这么做。请帮我转到
解决这个问题。我已经添加了所有JAR以及cglib-nodep-2.1.3 JAR

这是下面的代码 Bank.java

package beans;

 public class Bank {
     public void deposit() {
         System.out.println("Deposit Method in Bank");
     }
     public void withdraw() {
         System.out.println("Withdraw Method in Bank");
     }
     public void calcInt() {
         System.out.println("CalcInt Method in Bank");
     }
 }
下面的程序是NewCalcInt.java

NewCalcInt.java

package beans;

import java.lang.reflect.Method;
import org.springframework.beans.factory.support.MethodReplacer;

 public class NewCalcInt implements MethodReplacer {
    public Object reimplement(Object o, Method m, Object[] arg2) throws
    Throwable {

        System.out.println("NewCalcInt class new CalInt imp");
        return o;
    }
}
下面的代码是spring.xml spring.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans
    xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.springframework.org/schema/beans
    http://www.springframework.org/schema/beans/spring-beans-3.0.xsd" >
    <bean id="b" class="beans.Bank">
        <replaced-method name="calcInt" replacer="nc"></replaced-method>
    </bean>
    <bean id="nc" class="beans.NewCalcInt"></bean>
</beans>

我已经添加了jar

似乎没有问题,你能试着先放置
吗?@Mavlarn我试过了,但运行时间没有变化。我将向您显示错误警告:在上下文初始化过程中遇到异常-取消刷新尝试:org.springframework.beans.factory.BeanCreationException:创建名为“b”的bean时出错在类路径资源[spring.xml]中定义:bean实例化失败;嵌套异常为java.lang.ExceptionInInitializeError线程“main”org.springframework.beans.factory.BeanCreationException中的异常:创建类路径资源[spring.xml]中定义的名为“b”的bean时出错:bean实例化失败;原因:java.lang.ExceptionInInitializeError原因:java.lang.IllegalStateException:无法加载缓存项,原因:java.lang.CompatibleClassChangeError:class org.springframework.cglib.core.DebuggingClassWriter的接口org.springframework.asm.ClassVisitor为超级class@kuhajeyan我移除了一些我包括在内的罐子,现在它可以正常工作了。
 package beans;

 import org.springframework.context.ApplicationContext;
 import org.springframework.context.support.ClassPathXmlApplicationContext;

 public class ClientApp {
     public static void main(String[] args) {

         ApplicationContext context = new ClassPathXmlApplicationContext("spring.xml");
         Bank b = (Bank) context.getBean("b");
         b.deposit();
         b.withdraw();
         b.deposit();
     }
 }