Maven排除依赖和可选依赖

1.排除依赖

如果存在那种不是可选依赖,但是导入此项目又不希望使用此依赖时,这个时候就可以通过排除依赖来防止添加不必要的依赖,使用exclusion标签实现


    org.junit.jupiter
    junit-jupiter
    5.8.1
    test
    
        
            org.junit.jupiter
            junit-jupiter-engine
        
    

2.可选依赖

当项目中的某些依赖不希望被使用此项目作为依赖的项目使用时,可以给依赖添加`optional`标签表示此依赖是可选的,默认在导入依赖时,不会导入可选的依赖

比如Mybatis的POM文件中,就存在大量的可选依赖


  org.slf4j
  slf4j-api
  1.7.30
  true


  org.slf4j
  slf4j-log4j12
  1.7.30
  true


  log4j
  log4j
  1.2.17
  true

 由于Mybatis要支持多种类型的日志,需要用到很多种不同的日志框架,因此需要导入这些依赖来做兼容,但是我们项目中并不一定会使用这些日志框架作为Mybatis的日志打印器,因此这些日志框架仅Mybatis内部做兼容需要导入使用,而我们可以选择不使用这些框架或是选择其中一个即可

你可能感兴趣的:(maven,junit,java)