maven排除依赖

maven默认是将所依赖的jar都引用进来。有时候当前项目依赖不同的jar依赖于某些第三方jar包的不同版本,这时就会出现同时依赖用一个jar文件的不同版本,有时会有依赖冲突。解决方法就是配置排除依赖。
<dependency>   
     <groupId>org.springframework</groupId> 
     <artifactId>spring-core</artifactId> 
     <version>2.5.6</version> 
     <exclusions> 
           <exclusion>     
                <groupId>commons-logging</groupId>         
                <artifactId>commons-logging</artifactId> 
           </exclusion> 
     </exclusions> 
</dependency>
      注意exclusions是在某个具体依赖里面配置的,也就是说要找到需排除的jar包的依赖路径,这个可以在ide里面查看pom.xml的依赖图。

      maven还有个可选依赖的设置,在当前项目A设置对某个依赖是可选的,<optional>true</optional>
<dependency>
    <groupId>sample.ProjectB</groupId>
    <artifactId>Project-B</artifactId>
    <version>1.0</version>
    <scope>compile</scope>
    <optional>true</optional>
</dependency>
      这样设置后,再有个项目X依赖A时,如果X中没有B中的类路径,则不会把B依赖加进来。

猜你喜欢

转载自511039003.iteye.com/blog/2193197