maven 依赖属性

版权声明:欢迎大家转载,指正。 https://blog.csdn.net/yin__ren/article/details/81707204

1. maven 坐标:groupId, artifactId, version, packaging, classifier

  1. groupId: 定义当前 maven 项目隶属的实际项目,如:src/java/main 下的 com.liu.test (注: 一般是公司域名的倒序)
  2. artifactId: 项目的唯一 ID (注: 推荐使用实际项目名称做为 artifactId 的前缀,如 xxx-xxx)
  3. version: 定义 maven 项目当前所处的版本
  4. packaging: 该元素定义 maven 项目的打包方式
  5. classifier: 用来帮助定义构建输出的一些附属构件,由maven插件决定,不能像前几个属性一个样直接定义值

2. maven 依赖字段

  1. groupId, artifactId, version: 依赖的基本坐标
  2. type: 依赖的类型,对应于项目坐标定义的 packaging,默认为 jar
  3. scope: 依赖的范围
    1. compile: 编译依赖范围(默认值),编译依赖范围对于编译,测试,运行三种 classpath 都有效
    2. test: 测试依赖范围,测试依赖范围只对测试 classpath 有效,在编译主代码或运行项目的使用时将无法使用
    3. provided: 已提供依赖范围,已提供依赖范围对于编译和测试 classpath 有效,但在运行时无效
    4. runtime: 运行时依赖范围,运行时依赖范围对于测试和运行 classpath 有效,但在编译主代码时无效
    5. system: 系统依赖范围,系统依赖范围 使用时必须通过 systemPath 元素显示的指定依赖文件的路径(由于此类依赖不是通过 maven 仓库解析的,而且往往与本机绑定)
    6. import: 导入依赖范围,该依赖范围不会对三种 classpath 产生实际的影响
      这里写图片描述
  4. optional: 标记依赖是否可选 ,解决依赖传递与依赖调解
  5. exclusions: 排除传递性依赖

猜你喜欢

转载自blog.csdn.net/yin__ren/article/details/81707204
今日推荐