欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

maven?傳遞依賴的實現(xiàn)

 更新時間:2024年10月22日 11:31:47   作者:xujinwei_gingko  
本文主要介紹了Maven中傳遞依賴的處理方式,如scope=compile影響依賴傳遞,使用排除不需要的依賴,以及如何通過查看依賴樹解決運行時錯誤,特別是在依賴排除后可能導(dǎo)致的運行時缺少必需包的問題,感興趣的可以了解一下

1、maven 傳遞依賴scope=compile的包

比如:工程A依賴工程B,工程B依賴工程C,那么A工程的jar包含工程C中scope=compile的包

2、排除依賴用<exclusions>

如果A工程只想依賴B,不希望將B工程項下的C工程的包依賴進來,可以:

<exclusions>
    <exclusion>
         <groupId>*</groupId>
         <artifactId>*</artifactId>
    </exclusion>         
</exclusions>

3、當(dāng)程序中遇到編譯沒問題,運行有問題時,需要查找工程的依賴樹結(jié)構(gòu),看是否存在運行時需要的包 ,示例如下:

modeling-support工程依賴modeling-facade工程,modeling-facade工程依賴了metrics-api工程

modeling-support pom:

<dependency>
	<groupId>com.xxx</groupId>
	<artifactId>modeling-facade</artifactId>
</dependency>

modeling-facade pom:

<dependency>
	<groupId>com.xxx</groupId>
	<artifactId>metrics-api</artifactId>
	<exclusions>
		<exclusion>
			<groupId>*</groupId>
			<artifactId>*</artifactId>
		</exclusion>
	</exclusions>
</dependency>

 metrics-api pom:

<dependency>
	<groupId>org.mvel</groupId>
	<artifactId>mvel2</artifactId>
</dependency>

當(dāng)modeling-support 工程執(zhí)行代碼:Keval.eval(combinExpress, metricSourceIdMap);

由于Keval 是在metrics-api工程里面,所以傳遞依賴后,modeling-support對上述語句編譯沒問題,但是無法執(zhí)行Keval.eval ,因為執(zhí)行此代碼需要mvel2的包,然而modeling-facade 工程已經(jīng)排除了,所以modeling-support 工程也就沒有這個jar,進而運行出錯

到此這篇關(guān)于maven 傳遞依賴的實現(xiàn)的文章就介紹到這了,更多相關(guān)maven 傳遞依賴內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Java中Map與對象之間互相轉(zhuǎn)換的幾種常用方式

    Java中Map與對象之間互相轉(zhuǎn)換的幾種常用方式

    在Java中將對象和Map相互轉(zhuǎn)換是常見的操作,可以通過不同的方式實現(xiàn)這種轉(zhuǎn)換,下面這篇文章主要給大家介紹了關(guān)于Java中Map與對象之間互相轉(zhuǎn)換的幾種常用方式,需要的朋友可以參考下
    2024-01-01
  • Springboot解決no main manifest attribute錯誤

    Springboot解決no main manifest attribute錯誤

    在開發(fā)Springboot項目時,使用java -jar命令運行jar包可能出現(xiàn)no main manifest attribute錯誤,本文就來介紹一下該錯誤的解決方法,感興趣的可以了解一下
    2024-09-09
  • 詳解java如何實現(xiàn)將數(shù)據(jù)導(dǎo)出為yaml

    詳解java如何實現(xiàn)將數(shù)據(jù)導(dǎo)出為yaml

    這篇文章主要為大家詳細(xì)介紹了java如何利用snakeyaml和freemarker實現(xiàn)將數(shù)據(jù)導(dǎo)出為yaml文件,文中的示例代碼講解詳細(xì),有需要的小伙伴可以參考一下
    2023-11-11
  • SpringBoot整合Swagger的方法示例

    SpringBoot整合Swagger的方法示例

    這篇文章主要介紹了SpringBoot整合Swagger的方法示例,詳細(xì)介紹了SpringBoot如何整合Swagger以及swagger注解,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-10-10
  • Spring?Boot整合Kafka教程詳解

    Spring?Boot整合Kafka教程詳解

    這篇文章主要為大家介紹了Spring?Boot整合Kafka教程詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-03-03
  • Groovy的規(guī)則腳本引擎實例解讀

    Groovy的規(guī)則腳本引擎實例解讀

    這篇文章主要介紹了Groovy的規(guī)則腳本引擎實例解讀,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-03-03
  • java線程并發(fā)countdownlatch類使用示例

    java線程并發(fā)countdownlatch類使用示例

    javar的CountDownLatch是個計數(shù)器,它有一個初始數(shù),等待這個計數(shù)器的線程必須等到計數(shù)器倒數(shù)到零時才可繼續(xù)。
    2014-01-01
  • Spring中@Async的使用小結(jié)

    Spring中@Async的使用小結(jié)

    在Java開發(fā)中,我們常常會遇到需要執(zhí)行耗時操作的場景,例如文件上傳、網(wǎng)絡(luò)請求等,本文將介紹如何在Java中使用異步方法,并探討其中的一些注意事項,感興趣的朋友跟隨小編一起看看吧
    2024-01-01
  • JAVA中調(diào)用C語言函數(shù)的實現(xiàn)方式

    JAVA中調(diào)用C語言函數(shù)的實現(xiàn)方式

    這篇文章主要介紹了JAVA中調(diào)用C語言函數(shù)的實現(xiàn)方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • 如何設(shè)置springboot啟動端口

    如何設(shè)置springboot啟動端口

    spring boot是個好東西,可以不用容器直接在main方法中啟動,而且無需配置文件,方便快速搭建環(huán)境。下面給大家介紹springboot啟動端口的設(shè)置方法和spring boot創(chuàng)建應(yīng)用端口沖突8080 問題,感興趣的朋友一起看看吧
    2017-08-08

最新評論