java吧 关注:1,221,891贴子:12,675,203
  • 10回复贴,共1

技术问题,

只看楼主收藏回复

java代码执行单元测试,
提示error,类不是抽象的,并且未覆盖javax.servlet.ServletInputStream中的抽象方法setReadListener。
报error的是另外一个类A,我已经确认我的A类继承了ServletInputStream类,但是我重写setReadListener方法是报错的啊,不重写setReadListener代码没有编译问题。重写直接重写注解报红,他不让我重写,因为父类没有这个抽象方法,但是IDEA就要我重写。
这个A类是几年前的老代码了,肯定不需要改动,也就是不需要实现这个抽象方法的。
意思是:我代码中引用的ServletInputStream类确实是没有抽象方法setReadListener的,但是IDEA在跑代码时,取的ServletInputStream类和我的类版本是不一样的,导致IDEA判断我必须实现那个抽象方法。
这个问题怎么解决?


IP属地:广东来自Android客户端1楼2024-08-23 12:01回复
    求助!!


    IP属地:广东来自Android客户端2楼2024-08-23 12:13
    回复
      求助!!!!!!!!


      IP属地:广东来自Android客户端3楼2024-08-26 09:35
      回复
        不一样那就更新啊,重新编译下build


        IP属地:广东来自Android客户端4楼2024-08-26 16:42
        收起回复
          更新了版本吧


          IP属地:浙江来自Android客户端5楼2024-08-26 17:50
          收起回复
            很烦啊,编译和执行的类库不一致的问题导致。
            我用另一个方法解决了。
            执行时用一个可以重写方法的jar包,打包代码时改回不能重写方法的jar包,每次要打包代码本地运行就切换。虽然繁琐,但忍了。
            今天遇到另外一个问题,执行时又报一个NoSuchMethodError的错,也是编译执行类库不一致导致的,到底是哪里不一致啊,应该要找出来


            IP属地:广东来自Android客户端6楼2024-08-28 18:38
            回复