maven只classifer

hipilee發表於2018-07-19

1.classifier概述

classifier通常用於區分從同一POM構建的具有不同內容的構件(artifact)。它是可選的,它可以是任意的字串,附加在版本號之後。

2.使用場景

場景一:區分基於不同JDK版本的jar包

如果專案依賴,json-lib-2.2.2-jdk13.jar。則XML配置內容如下:

<dependency>  
    <groupId>net.sf.json-lib</groupId>   
    <artifactId>json-lib</artifactId>   
    <version>2.2.2</version>  
    <classifier>jdk13</classifier>    
</dependency>  
  •  

如果專案依賴,json-lib-2.2.2-jdk15.jar。則XML配置內容如下:

<dependency>  
    <groupId>net.sf.json-lib</groupId>   
    <artifactId>json-lib</artifactId>   
    <version>2.2.2</version>  
    <classifier>jdk15</classifier>    
</dependency>  

注意,如果json-lib沒有提供,json-lib-2.2.2.jar。那麼,設定依賴的時候,必須使用 classifier ,否則會報錯,因為找不到指定的jar包。

場景二:區分專案的不同組成部分,例如:原始碼、javadoc、類檔案等。

如果需要json-lib-2.2.2-jdk15-javadoc.jar。則XML配置內容如下:

<dependency>  
    <groupId>net.sf.json-lib</groupId>   
    <artifactId>json-lib</artifactId>   
    <version>2.2.2</version>  
    <classifier>jdk15-javadoc</classifier>    
</dependency> 

如果需要json-lib-2.2.2-jdk15-sources.jar。則XML配置內容如下:

<dependency>  
    <groupId>net.sf.json-lib</groupId>   
    <artifactId>json-lib</artifactId>   
    <version>2.2.2</version>  
    <classifier>jdk15-sources</classifier>    
</dependency> 

相關文章