当前位置: 首页 > article >正文

maven中的 type ,scope的作用

dependency为什么会有type为pom,默认的值是什么?                             
dependency中type默认为jar即引入一个特定的jar包。那么为什么还会有type为pom呢?当我们需要引入很多jar包的时候会导致pom.xml过大,我们可以想到的一种解决方案是定义一个父项目,但是父项目只有一个,也有可能导致父项目的pom.xml文件过大。这个时候我们引进来一个type为pom,意味着我们可以将所有的jar包打包成一个pom,然后我们依赖了pom,即可以下载下来所有依赖的jar包
 

scope元素的作用:控制 dependency 元素的使用范围。通俗的讲,就是控制 Jar 包在哪些范围被加载和使用。具体值如下:

compile默认值。表示被依赖项目需要参与当前项目的编译、测试、打包、运行,是一个比较强的依赖。
test:依赖项目仅仅参与测试相关的工作。包括测试代码的编译和执行,不会被打包,例如:junit。
runtime:表示被依赖项目无需参与项目的编译,不过参与后期的测试、打包、运行。与compile相比,跳过了编译。例如JDBC驱动,适用运行和测试阶段
provided理论上可以参与编译,测试等周期,但不被打包,也不会参与运行(比如需要排除掉Spring Web里的Tomcat),因为其他的依赖会提供。相比于compile,打包阶段做了exclude操作。
system:和provided相同。不过被依赖项不会从maven仓库下载,而是从本地文件系统拿。需要添加systemPath的属性来定义路径。一般用于引用外部Jar包。
import:它只使用在<dependencyManagement>中,表示从其它的pom文件导入dependency的配置。


http://www.kler.cn/news/16477.html

相关文章:

  • 2335. 装满杯子需要的最短总时长
  • 83. map函数()-通过函数实现对可迭代对象的操作(适合零基础)
  • 「SQL面试题库」 No_55 销售分析 I
  • ramfs, rootfsinitramfs
  • HTML(四) -- 多媒体设计
  • CCD视觉检测设备如何选择光源
  • 【面试长文】HashMap的数据结构和底层原理以及在JDK1.6、1.7和JDK8中的演变差异
  • Blender启动场景的修改
  • 资讯汇总230503
  • 哈希表企业应用-DNA的字符串检测
  • CKA/CKS/CKAD认证考试攻略
  • 【五一创作】( 字符串) 409. 最长回文串 ——【Leetcode每日一题】
  • 【LeetCood206】反转链表
  • Python小姿势 - Python学习笔记——类与对象
  • ZooKeeper安装与配置集群
  • NECCS|全国大学生英语竞赛C类|词汇和语法|词汇题|21:03~21:53
  • 可视化绘图技巧100篇高级篇(一)-环状条形图(radial bar chart)
  • android基础知识
  • Redis高频面试题,使用场景
  • TiDB实战篇-操作系统参数TiDB Server
  • HDU5909 Tree Cutting(FWT)
  • 人人都可用chatgpt开发小项目
  • 第十二章 Transform组件(下)
  • numpy的下载、数据类型、属性、数组创建
  • Redis-列表(List)
  • 【23】linux进阶——linux的软链接和硬链接
  • NTT学习笔记(快速数论变换)
  • 【人脸检测】——YOLO5Face: Why Reinventing a Face Detector论文浅读
  • RT-Thread GD32F4xx 看门狗驱动
  • 1.3 HBase 基本架构