成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

No such Method 或者 No such Class 解決并分析

fizz / 2768人閱讀

摘要:負(fù)責(zé)加載當(dāng)前應(yīng)用的中的所有類。關(guān)于自定義而我們公司采用的框架是自定義引入包按照字母順序來加載,所以會(huì)出現(xiàn)某個(gè)依賴的低版本的包先行加載到中,導(dǎo)致出現(xiàn)或者

問題

開發(fā)一個(gè)小功能,遇到了No such method ,因?yàn)闆]有源碼,一直以為攔截器的問題導(dǎo)致404,單步調(diào)試過程中發(fā)現(xiàn)只要運(yùn)行StringUtils.substringsBetween 這段代碼就會(huì)有問題。
好奇心趨勢(shì)一直調(diào)試這個(gè)問題,懷疑是不是像上次一樣JDK版本的問題導(dǎo)致的?

查找過程

后來確認(rèn)同事也是用的JDK1.8版本,而且這個(gè)方法也不是原生的,咨詢同事原來是因?yàn)榘鼪_突的問題導(dǎo)致。

修復(fù)問題

StringUtils 是commons-lang下面的一個(gè)包,而用這個(gè)包的地方很多,很容易出現(xiàn)版本沖突的問題。這時(shí)候就要想辦法解決包沖突,問題解決。

為什么線上沒有問題,線下調(diào)試會(huì)出現(xiàn)問題?

這是一個(gè)值得深層次思考的問題,

classloader加載類有幾種方式:

使用Bootstrap Classloader來加載jdk或者jre的類。負(fù)責(zé)加載java基礎(chǔ)類,主要是 %JRE_HOME/lib/ 目錄下的rt.jar、resources.jar、charsets.jar和class等

使用Extension Classloader來加載,你可以把需要加載的jar都扔到%JRE_HOME%/lib/ext下面,這個(gè)目錄下的jar包會(huì)在Bootstrap Classloader工作完后由Extension Classloader來加載。非常方便,非常省心。:)

App ClassLoader 負(fù)責(zé)加載當(dāng)前java應(yīng)用的classpath中的所有類。

關(guān)于自定義ClassLoader

而我們公司采用的SOA框架是自定義ClassLoader,引入jar包按照字母順序來加載,所以會(huì)出現(xiàn)某個(gè)jar 依賴的低版本的jar包先行加載到classLoader中,導(dǎo)致出現(xiàn)No such method 或者 No such Class

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/70602.html

相關(guān)文章

  • Java JSONObject get or opt

    摘要:的官方類型是,文件擴(kuò)展名是。值與值之間使用逗號(hào)分隔。通過以上兩種結(jié)構(gòu)可以表示各種復(fù)雜結(jié)構(gòu)。對(duì)象示例對(duì)象由一系列無序的鍵值對(duì)組成。方法生成的字符串表示。對(duì)于基本類型如則會(huì)返回該類型近乎友好的值,詳見續(xù)表。 JSON JSON(JavaScript Object Notation) 是一種輕量級(jí)的數(shù)據(jù)交換格式,它使得人們能夠輕易地閱讀和編寫,同時(shí)也方便機(jī)器進(jìn)行解析和生成。盡管 JSON 脫...

    CntChen 評(píng)論0 收藏0
  • PHP反射機(jī)制

    摘要:反射機(jī)制反射機(jī)制從開始支持,做業(yè)務(wù)開發(fā)的話應(yīng)該很少接觸反射。我的理解就是反射機(jī)制能拿到類里面的屬性方法,和的也可以以上是官方文檔中給出的東西,說實(shí)話我看了感覺沒什么感覺。在容器成員變量中數(shù)組維護(hù)這個(gè)類,反射實(shí)例調(diào)用構(gòu)造函數(shù),獲取返回值。 PHP反射機(jī)制 PHP反射機(jī)制從PHP5開始支持,做業(yè)務(wù)開發(fā)的話應(yīng)該很少接觸反射。我其實(shí)也是接觸不多,最近在學(xué)習(xí)laravel的優(yōu)雅,就接觸了到它其中...

    URLOS 評(píng)論0 收藏0
  • 2017.02.13 JS學(xué)習(xí)

    摘要:今天在第步上花了個(gè)多小時(shí),好在最后完成了,現(xiàn)把問題和記錄下來。循環(huán)還要多多練習(xí)。前提是之前的判斷中的其他情況會(huì) 今天在 FreeCodeCamp 第215步上花了1個(gè)多小時(shí),好在最后完成了,現(xiàn)把問題和code記錄下來。 題目: Profile LookupWe have an array of objects representing different people in our c...

    terasum 評(píng)論0 收藏0
  • java-工具類Collections和Arrays的設(shè)計(jì)和區(qū)別

    摘要:排序的算法是歸并排序。舉個(gè)例子,的算法可以不是使用歸并排序,但是該算法一定要是穩(wěn)定的。這個(gè)類是的一部分。官方這個(gè)類只包含操作或返回集合的靜態(tài)方法。具體來說是,第一步,先把集合轉(zhuǎn)換為數(shù)組,第二步,調(diào)用。和沒有什么區(qū)別,只是傳參有點(diǎn)不同。 Arrays 1.作用看類的名字,就知道是對(duì)數(shù)組(數(shù)據(jù)類型[])進(jìn)行各種操作。例如,排序、查找、復(fù)制等。 排序的算法是歸并排序。查找的算法是二分查找。復(fù)...

    mj 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<