日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

奇闻异事之NoSuchMethodError

發(fā)布時(shí)間:2025/3/17 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 奇闻异事之NoSuchMethodError 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

title: 奇聞異事之NoSuchMethodError tags:

  • NoSuchMethodError
  • maven categories: 工作日志 date: 2017-12-05 22:09:37

背景

今天小伙伴開(kāi)發(fā)碰到一個(gè)問(wèn)題,在本地環(huán)境IDE調(diào)不通新發(fā)布的rpc接口中的新加的method

報(bào)錯(cuò)NoSuchMethodError

即使重啟IDE也無(wú)法掉通

由于現(xiàn)場(chǎng)已經(jīng)不存在 就不貼詳細(xì)的報(bào)錯(cuò)堆棧了

思路

  • NoSuchMethodError偏向于該方法不存在那么可能是遠(yuǎn)程rpc未發(fā)布新的接口?
  • 項(xiàng)目采用maven,報(bào)NoSuchMethodError的是公司內(nèi)部方法不存在版本沖突【初步排除版本沖突】
  • 由于思路2被排除那么就只能思考是否是遠(yuǎn)程沒(méi)有發(fā)布 于是通過(guò)查看rpc的工具真是服務(wù)端確實(shí)發(fā)布了該方法

    并且發(fā)現(xiàn)其他客戶(hù)端成功調(diào)用了同一個(gè)服務(wù)端的對(duì)應(yīng)接口方法【為排除配置錯(cuò)誤 比如連上了不同版本 不同ip的服務(wù)】

    調(diào)查一度陷入了僵局

    既然排除了思路1 那根據(jù)福爾摩斯所說(shuō)【排除一切不可能的,剩下的即使再不可能,那也是真相】 當(dāng)然一切不可能也只是所學(xué)知識(shí)范圍內(nèi)的不可能而已

    于是繼續(xù)考慮思路2

    懷疑是否存在同一個(gè)類(lèi)在classpath中

    通過(guò)訪問(wèn)對(duì)應(yīng)web的target目錄 發(fā)現(xiàn)確實(shí)存在兩個(gè)不同版本的接口包

    此時(shí)問(wèn)題了然!確實(shí)是由于同一個(gè)class在不同版本中存在導(dǎo)致 大家知道這是典型的jar沖突!

    那么在使用maven的時(shí)候同樣的GA為何沒(méi)有被自動(dòng)選擇呢?

    猜測(cè)如下:

    開(kāi)發(fā)者在更新pom文件時(shí)并沒(méi)有關(guān)閉當(dāng)前應(yīng)用由于重新import pom時(shí)不能需要?jiǎng)h除舊版本的jar同時(shí)引入新版本的jar

    但是由于當(dāng)前應(yīng)用正在運(yùn)行 java進(jìn)程占用了舊版本的jar導(dǎo)致maven reimport時(shí)無(wú)法刪除舊版本jar【未通過(guò)maven命令而是IDE的GUI reimport操作】

    那么此時(shí)classpath中就存在了兩個(gè)不同版本的jar 即使關(guān)閉當(dāng)前應(yīng)用重啟也不能刪除就舊版本jar 需要mvn clean之后重新運(yùn)行

    由于ide也引入了新的jar 因此編譯也不會(huì)報(bào)錯(cuò) 只是在運(yùn)行時(shí)實(shí)際存在兩個(gè)不同的jar

    通過(guò)和對(duì)應(yīng)開(kāi)發(fā)溝通發(fā)現(xiàn)確實(shí)如此 通過(guò)clean命令后應(yīng)用可以正常調(diào)用!

    總結(jié)

    以上是生活随笔為你收集整理的奇闻异事之NoSuchMethodError的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

    如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。