maven項目,把依賴的module打包為jar


安卓的同事說,如果引用的2個jar文件中,存在相同的package和類名稱,即類的限定名一樣,會報錯.我覺得不會,就想試試.

首先在module中重寫一個類文件,包名和類名與所覆蓋的完全一樣.

然后打成jar文件.發現idea會把maven依賴的module全部打入到一個包中去,后來發現原因如下圖.

 

解決辦法:先右鍵1.中依賴的module,remove.然后,右鍵2中的"pack into xxx.jar",就會是3中我們期望的效果了.

 

 

最后,我運行帶有main方法的jar包,雖然引用的jar包中存在相同的類限定名,但是不會報錯.它會順序尋找classpath,找到第一個類.可能是安卓那邊的jvm機制和java不一樣吧,所以會報錯.

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM