亚洲色蝴蝶中文娱乐网,在线亚洲欧美一区二区中文字幕,无人视频在线观看视频高清视频,99午夜国产精品一区二区,人人妻人人爽人人狠狠

maven的pom 文件scope和exclusion標(biāo)簽的作用

時(shí)間:2022-09-08 09:25:20 類型:JAVA
字號:    

  1.exclusion

  來排除一些不需要同時(shí)下載的依賴jar,可以用來解決 jar包沖突

 <dependency>
    <groupId>org.apache.logging.log4j</groupId>
    <artifactId>log4j-core</artifactId>
    <version>2.10.0</version>
    <exclusions>
        <exclusion>
        <artifactId>log4j-api</artifactId>
        <groupId>org.apache.logging.log4j</groupId>
        </exclusion>
    </exclusions>
</dependency>

log4j-core本身是依賴了log4j-api的,但是因?yàn)橐恍┢渌哪K也依賴了log4j-api,并且兩個(gè)log4j-api版本不同,所以我們使用<exclusion>標(biāo)簽排除掉log4j-core所依賴的log4j-api,這樣Maven就不會(huì)下載log4j-core所依賴的log4j-api了,也就保證了我們的項(xiàng)目中只有一個(gè)版本的log4j-api。

2. scope 依賴范圍來控制哪些依賴 在哪些classpath 中可用

   5個(gè)屬性值的含義

 

    compile,缺省值,適用于所有階段,會(huì)打包進(jìn)項(xiàng)目。

    provided,類似compile,期望JDK、容器或使用者會(huì)提供這個(gè)依賴。

    runtime,只在運(yùn)行時(shí)使用,如JDBC驅(qū)動(dòng),適用運(yùn)行和測試階段。

    test,只在測試時(shí)使用,用于編譯和運(yùn)行測試代碼。不會(huì)隨項(xiàng)目發(fā)布。

    system,類似provided,需要顯式提供包含依賴的jar,Maven不會(huì)在Repository中查找它。


<