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

Maven的生命周期与依赖作用域介绍

说明:本文介绍Maven的生命周期,以及在pom.xml文件中每个依赖(dependency标签内)scope标签的内容。

Maven生命周期

在IDEA项目中,右侧边栏,点Maven,可以看到以下生命周期。

在这里插入图片描述

其中,

  • clean:删除掉编译生成的字节码文件,打包生成的jar包;

  • validate:验证项目是否正确,是否缺少某些必要的配置;

  • compile:编译项目源码,根据源文件生成字节码文件;

  • test:单元测试,执行项目中所有的测试用例;

  • package:打包项目,把编译生成的字节码文件、其他资源文件打成一个jar包或者war包。包括编译、测试;

  • verify:检查打包生成的jar包是否正确,是否符合指令标准以及各种规则;

  • install:把项目生成的jar包或者war包安装到本地仓库;

  • site:生成项目站点文档,把项目的信息和文档生成一个静态的网站;

  • deploy:把项目生成的jar包或者war包上传到远程仓库,一般是公司搭建的私服里;

依赖的作用域

在pom文件中,单个依赖如下:

<dependency><groupId>org.junit.jupiter</groupId><artifactId>junit-jupiter-api</artifactId><version>5.11.2</version><scope>test</scope>
</dependency>

其中,

  • groupId:企业唯一标识,一般是公司域名反写;

  • artifactId:工程项目的唯一标识;

  • version:版本号;

  • scope:作用域,依赖的范围;

其中,依赖的scope标签可以有以下值:

  • compile:编译和运行时都需要,默认值,可省略不写;

  • provided:编译时需要,运行时不需要,如lombok、servlet API;

  • runtime:运行时需要,编译时不需要,如JDBC驱动;

  • test:只在测试时需要,不会被打包到最终的jar包中,如junit,只能在单元测试里使用,不能在正式代码里使用;

  • system:该依赖是本地文件系统中提供的,需配合systemPath标签使用,指定依赖位置;

  • import:导入其他pom文件的依赖,不会导入实际的依赖,只是用来管理依赖的版本号;

总结

本文介绍了Maven的生命周期和依赖作用域,scope标签的选项值

http://www.lryc.cn/news/454331.html

相关文章:

  • Django学习笔记四:urls配置详解
  • NIO的callback调用方式
  • 百度文心智能体平台开发萌猫科研加油喵
  • Hive数仓操作(十六)
  • 第十二届蓝桥杯嵌入式省赛程序设计题解析(基于HAL库)(第一套)
  • MongoDB入门:安装及环境变量配置
  • 利用 notepad++ 初步净化 HaE Linkfinder 规则所提取的内容(仅留下接口行)
  • RCE(remote command/code execute)远程命令注入
  • ​一篇关于密码学的概念性文章
  • 什么是汽车中的SDK?
  • 利用CRITIC客观权重赋权法进行数值评分计算——算法过程
  • 一个月学会Java 第4天 运算符和数据转换
  • Stream流的终结方法(一)
  • GO网络编程(二):客户端与服务端通信【重要】
  • 快速熟悉Nginx
  • VikParuchuri/marker 学习简单总结
  • 【AI知识点】词嵌入(Word Embedding)
  • Python从入门到高手5.1节-Python简单数据类型
  • Hbase要点简记
  • RabbitMQ的各类工作模式介绍
  • 李宏毅深度学习-图神经网络GNN
  • Redis篇(缓存机制 - 分布式缓存)(持续更新迭代)
  • python交互式命令时如何清除
  • Token,Cookie,Session,JWT详解
  • opencv-rust 系列: 1, 安装及运行自带示例和测试程序
  • Linux系统编程(一):Linux平台上静态库和动态库的制作与使用
  • Nginx的基础讲解之重写conf文件
  • RIFE: Real-Time Intermediate Flow Estimation for Video Frame Interpolation
  • rabbitMq-----broker服务器
  • MAC备忘录空白解决方案