Maven的依赖范围、依赖冲突、依赖排除和版本限定

来源:互联网 发布:景德镇房管局交易数据 编辑:程序博客网 时间:2024/05/17 10:54

maven的配置和依赖问题:

1.0 依赖范围:
compile  编译、测试、运行、发布和打包都会使用
provided 编译和测试起作用
Test  测试使用
runtime   运行和测试时候使用
system 编译。测试、运行  ,maven不会检索
2.o、Maven的依赖范围的传递性


A  依赖jar包 A---第一依赖compile\provided compile\providedcompile\provided compile
B  依赖A项目 B---第二依赖compile provideruntime test
C  依赖B项目 C---第三依赖compile\provided 没有\providedruntime\provided 没有


3.0 Maven的依赖的冲突
冲突的解决方案:
1、声明顺
 
声明在前的首先依赖,一般把单个的依赖放在前边,关联下载的放在后边
2、排除依赖
在POM中直接进行依赖的排除
<dependency>  
    <groupId>com.alibaba.external</groupId>  
  1.     <artifactId>sourceforge.spring</artifactId>  
  2.     <version>2.0.1</version>  
  3.     <exclusions>  
  4.       <exclusion>  
  5.         <groupId>org.slf4j</groupId>  
  6.         <artifactId>slf4j-log4j12</artifactId>  
  7.         </exclusion>  
  8.     </exclusions>  
  9. </dependency>  

3、限定版本号 
<!--1、定义版本属性 -->
<properties>
<spring.version>4.3.8.RELEASE</spring.version>
</properties>
<!--2、限定版本号 -->
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>${spring.version}</version>
</dependency>
</dependencies>
</dependencyManagement> 







原创粉丝点击