maven的生命周期及常用命令介绍
作者:嘿咻嘿咻 发布时间:2022-03-10 17:21:16
maven简介及优势
maven是一个项目构建和管理的工具,提供了帮助管理 构建、文档、报告、依赖、scms、发布、分发的方法。可以方便的编译代码、进行依赖管理、管理二进制库等等。maven的好处在于可以将项目过程规范化、自动化、高效化以及强大的可扩展性利用maven自身及其插件还可以获得代码检查报告、 单元测试覆盖率、实现持续集成等等.
maven优势:
1.项目自动化编译部署
2.项目jar包的依赖管理
3.项目的插件管理
Maven是围绕着构建生命周期的核心概念为原型,整个项目的创建和部署都是围绕着生命周期展开的,一个生命周期由若干个生命周期阶段组成。
maven有三个内置的默认生命周期分别是default, clean and site.
默认(default)的生命周期处理你的项目部署,clean生命周期处理项目的清洗,而(site)网站的生命周期处理你的项目的站点文档的创建。
这些构建的生命周期中的每一个由编阶段的一个不同的列表,其中,构建阶段表示在生命周期的一个阶段所定义。
例如,default的生命周期包括以下阶段(用于生命周期阶段的完整列表,请参阅生命周期参考):
validate - 验证项目是正确的,所有必要的信息,请访问
compile - 编译项目的源代码
test - 使用合适的单元测试框架测试编译源代码。这些测试应该不需要代码被打包或部署
package - 以编译后的代码,并在其分发格式打包,例如一个JAR。
verify - 运行的集成测试结果的检查,以确保质量标准得到满足
install - 包本地安装到本地存储库中,用作其他项目的依赖
deploy -完成构建环境中,复制最终的包到远程仓库与其他开发者和项目共享
当默认的生命周期时,Maven会首先验证项目,然后将尝试编译源代码,运行那些对测试,封装的二进制文件(例如JAR),针对这个软件包运行集成测试,验证了集成测试,安装验证包到本地仓库,最后安装的软件包部署到远程存储库。
常用的maven命令行:
mvn clean
删除任何生成输出(如类文件或jar文件)
mvn test
为项目运行单元测试
mvn install
将项目构件复制到您的本地存储库中
mvn deploy
将项目构件复制到远程存储库中
mvn site
创建项目文档(如报告或Javadoc)。
mvn compile
编译
mvn validate
PS:下面看下Eclipse中maven常用的命令
在某一个maven项目右键快捷方式,然后点击Run As就可以发现几个Maven的命令:
Maven Build:
这个命令用于编译Maven工程,执行命令后会在target文件夹中的classes中生成对应的class文件。
Maven Clean:
删除target文件夹,即删除生成的package包以及class等文件。
Maven Test:
先自动进行编译,在运行所有的测试用例。
Maven install:
发布生成对应的package包(有war和jar两种形式)。
来源:https://www.cnblogs.com/sunjiqiang/p/5645281.html
猜你喜欢
- 什么是mybatis,mybatis有什么特点,下面先给大家介绍下mybatis的概念及特点。jdbc开发优缺点:1)优点:简单易学,上手快
- 背景客户使用我们系统的时候,查询不带任何查询条件,查询就返回全部数据,500多万条数据啊,然后直接导出,数据量庞大,接口超时,这可苦了我们这
- 使用 replace 函数动态填充字符串String str="Hello {0},我是 {1},今年{2}岁"
- 原因每次使用idea新建项目,就会在默认的c盘下的一个maven仓库中下载jar包,可是我自己指定maven仓库不是这个。如何让idea在新
- 冒泡排序原理①比较相邻的元素,如果前一个元素比后一个元素大,则交换这两个元素的位置②对每一对相邻的元素循环上面的步骤,最终最后面的元素就是最
- 文件数据流在java语言中,进行文件输入和输出时,经常会使用到FileIntputStream和FileOutputStream两个文件数据
- 前言在前面的文章中其实大家也已经看到我使用过collect(Collectors.toList()) 将数据最后汇总成一个 List 集合。
- 前言在web开发过程中涉及到表格时,例如dataTable,就会产生分页的需求,通常我们将分页方式分为两种:前端分页和后端分页。前端分页一次
- 插件安装方式:新版本IDE安装方式略有不同,不一一赘述 1、Background Image Plus
- 因为涉及到 io 流输入问题,如果不关闭会一直占用资源。所以使用过后要及时关闭,防止资源一直被占用。Scanner在使用前要导入 java.
- 本文开始做一个网上商城的项目,首先从搭建环境开始,一步步
- 方法● maxBy:获取流中最大元素;minBy:获取流中最小元素● joining:合并,将流中的元素,以字符串的形式拼接起来● summ
- 本文介绍了spring cloud Feign使用中遇到的问题总结,分享给大家,具体如下:问题一:在前面的示例中,我们讲过@RequestM
- 1、在Windows下用CMD netstat命令可以获得当前进程监听端口号的信息,如netstat -ano可以看到IP、port、状态和
- 1. 基本数据类型(以int为例,其他类似):Controller代码:@RequestMapping("saysth.do&qu
- BeanUtilsBeanUtils是Apache commens组件里面的成员,由Apache提供的一套开源api,用于简化对javaBe
- Quick Start在SpringBoot中使用log4j2日志框架,只需三步:引入依赖配置log文件获取Logger实例并输出日志引入依
- 一、概述本质上,这是一个包含有可选值的包装类,这意味着 Optional 类既可以含有对象也可以为空。Optional 是 Java 实现函
- 近日工程中,逐渐感觉到原来复制粘贴代码的笨重,突然想起以前有人和我说起过Git和SVN之类的版本管理工具。由于平时主要是写Java代码,所以
- 目录前言反射基础数据准备基于反射创建对象获取反射中的对象获取类中属性获取类中的构造方法获取类中方法结语前言大家好,瑞雪后的第一天,每个周一的