摘要:推薦方案修改依賴包的優先級因為這個老項目是用開發,先說操作方法。修改菜單快捷鍵把優先級高的包放到上面,中,自帶的包默認就是最高優先級,所以使用不會出現類似的問題。
問題出現:
一個老項目的退款功能被微信支付后臺停用,原因是xml解析工具有漏洞風險, 微信客服給出的解決方案是使用官方的補丁。 使用補丁后發現:xml-api包與jdk自帶的包沖突。 具體原因: xml-api包的某個類與jdk自帶的某個類具有相同的全限定名,但是xml-api包中并沒有相關實現, IDE沒有依賴jdk自帶的包,而是優先依賴xml-api包,導致項目無法完成編譯。
嘗試解決:
在 Maven 中排除 xml-api 包: 從父 pom 里面做排除: 但是項目年代久遠,各種類庫的依賴盤根錯節, 到父 pom 里面沒找到依賴,到依賴的自定義基本庫里面也沒找到。 況且考慮到父 pom 被其他項目依賴的可能性,所以還是想想其他辦法。 全局排除: 在 pom 文件里加入沖突包的依賴,然后再排除包里全部的內容:這個方法能夠排除掉項目對 xml-api 包里的全部依賴; 但是因為先導入后排除,項目依然會優先依賴 xml-api 包;所以問題還是沒有解決。 * *
推薦方案:
修改依賴包的優先級: 因為這個老項目是用 Eclipse 開發,先說 Eclipse 操作方法。 Eclipse: 設置 build path order; 把優先級高的包放到上面, 所以可以把 jre 的包放到最上面。 順便看了下 IDEA 的設置,也能修改優先級。 IDEA: 修改 classpath order: 菜單:File -> Project Structure -> Modules 快捷鍵:Ctrl + Alt + Shift + S -> Modules 把優先級高的包放到上面, IDEA 中,jdk 自帶的包默認就是最高優先級,所以使用 IDEA 不會出現類似的問題。
傳送門:http://blog.51cto.com/1350814...
本文系筆者原創
轉載請注明出處
—————————————
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/77426.html
摘要:模擬命令,并沒有做實際的操作。申明依賴命令增加新的依賴包到當前目錄的文件中。你甚至可以輸入一個軟件包的版本號,來顯示該版本的詳細信息。你也可以在第三個參數中指定版本號,否則將獲取最新的版本。 原文地址 : composer 命令行 全局參數 下列參數可與每一個命令結合使用: --verbose (-v): 增加反饋信息的詳細度。 -v 表示正常輸出。 -vv 表示更詳細的輸出。 ...
摘要:我們可以把未經過打包的源代碼發布到,并把中的字段指向源代碼,這樣引入的就交由項目的構建工具來進行處理,因此理論上就可以避免重復依賴了。總結通過這兩天的折騰,主要收獲有點發布包的流程中的字段判斷重復依賴的機制基于組件封裝組件時如何避免重復依賴 這兩天一直在忙于封裝一個vue table組件并發布到npm,記錄一下我是如何把npm包的大小從100多kb減小到不足1kb的過程。 背景 這個組...
閱讀 3533·2021-11-18 13:22
閱讀 2547·2021-09-23 11:53
閱讀 715·2019-08-30 13:17
閱讀 1339·2019-08-30 13:12
閱讀 891·2019-08-29 15:43
閱讀 1091·2019-08-29 12:53
閱讀 2826·2019-08-26 18:27
閱讀 1494·2019-08-26 11:52