小編給大家分享一下如何設(shè)置依賴包的優(yōu)先級(jí),希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!
創(chuàng)新互聯(lián)致力于互聯(lián)網(wǎng)網(wǎng)站建設(shè)與網(wǎng)站營(yíng)銷,提供成都網(wǎng)站設(shè)計(jì)、做網(wǎng)站、網(wǎng)站開(kāi)發(fā)、seo優(yōu)化、網(wǎng)站排名、互聯(lián)網(wǎng)營(yíng)銷、成都小程序開(kāi)發(fā)、公眾號(hào)商城、等建站開(kāi)發(fā),創(chuàng)新互聯(lián)網(wǎng)站建設(shè)策劃專家,為不同類型的客戶提供良好的互聯(lián)網(wǎng)應(yīng)用定制解決方案,幫助客戶在新的全球化互聯(lián)網(wǎng)環(huán)境中保持優(yōu)勢(shì)。問(wèn)題出現(xiàn):一個(gè)老項(xiàng)目的退款功能被微信支付后臺(tái)停用,原因是xml解析工具有漏洞風(fēng)險(xiǎn),
微信客服給出的解決方案是使用官方的補(bǔ)丁。
使用補(bǔ)丁后發(fā)現(xiàn):xml-api包與jdk自帶的包沖突。
具體原因:
xml-api包的某個(gè)類與jdk自帶的某個(gè)類具有相同的全限定名,但是xml-api包中并沒(méi)有相關(guān)實(shí)現(xiàn),
IDE沒(méi)有依賴jdk自帶的包,而是優(yōu)先依賴xml-api包,導(dǎo)致項(xiàng)目無(wú)法完成編譯。
嘗試解決:
在 Maven 中排除 xml-api 包: 從父 pom 里面做排除: 但是項(xiàng)目年代久遠(yuǎn),各種類庫(kù)的依賴盤根錯(cuò)節(jié), 到父 pom 里面沒(méi)找到依賴,到依賴的自定義基本庫(kù)里面也沒(méi)找到。 況且考慮到父 pom 被其他項(xiàng)目依賴的可能性,所以還是想想其他辦法。 全局排除: 在 pom 文件里加入沖突包的依賴,然后再排除包里全部的內(nèi)容: <dependency> <groupId></groupId> <artifactId></artifactId> <version></version> <exclusions> <exclusion> <groupId>*</groupId> <artifactId>*</artifactId> </exclusion> </exclusions> </dependency> 這個(gè)方法能夠排除掉項(xiàng)目對(duì) xml-api 包里的全部依賴; 但是因?yàn)橄葘?dǎo)入后排除,項(xiàng)目依然會(huì)優(yōu)先依賴 xml-api 包;所以問(wèn)題還是沒(méi)有解決。
推薦方案:
修改依賴包的優(yōu)先級(jí): 因?yàn)檫@個(gè)老項(xiàng)目是用 Eclipse 開(kāi)發(fā),先說(shuō) Eclipse 操作方法。 Eclipse: 設(shè)置 build path order; 把優(yōu)先級(jí)高的包放到上面, 所以可以把 jre 的包放到最上面。 順便看了下 IDEA 的設(shè)置,也能修改優(yōu)先級(jí)。 IDEA: 修改 classpath order: 菜單:File -> Project Structure -> Modules 快捷鍵:Ctrl + Alt + Shift + S -> Modules 把優(yōu)先級(jí)高的包放到上面, IDEA 中,jdk 自帶的包默認(rèn)就是最高優(yōu)先級(jí),所以使用 IDEA 不會(huì)出現(xiàn)類似的問(wèn)題。
看完了這篇文章,相信你對(duì)如何設(shè)置依賴包的優(yōu)先級(jí)有了一定的了解,想了解更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!
當(dāng)前題目:如何設(shè)置依賴包的優(yōu)先級(jí)-創(chuàng)新互聯(lián)
瀏覽地址:http://jinyejixie.com/article26/djsicg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站建設(shè)、網(wǎng)站改版、外貿(mào)建站、響應(yīng)式網(wǎng)站、電子商務(wù)、定制開(kāi)發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容