maven常用插件功能

maven-dependency-plugin

http://maven.apache.org/plugins/maven-dependency-plugin/

maven-dependency-plugin最大的用途是帮助分析项目依赖,dependency:list能够列出项目最终解析到的依赖列表,dependency:tree能进一步的描绘项目依赖树,dependency:analyze可以告诉你项目依赖潜在的问题,如果你有直接使用到的却未声明的依赖,该目标就会发出警告。maven-dependency-plugin还有很多目标帮助你操作依赖文件,例如dependency:copy-dependencies能将项目依赖从本地Maven仓库复制到某个特定的文件夹下面。

 

maven-release-plugin

http://maven.apache.org/plugins/maven-release-plugin/

maven-release-plugin的用途是帮助自动化项目版本发布,它依赖于POM中的SCM信息。release:prepare用来准备版本发布,具体的工作包括检查是否有未提交代码、检查是否有SNAPSHOT依赖、升级项目的SNAPSHOT版本至RELEASE版本、为项目打标签等等。release:perform则 是签出标签中的RELEASE源码,构建并发布。版本发布是非常琐碎的工作,它涉及了各种检查,而且由于该工作仅仅是偶尔需要,因此手动操作很容易遗漏一 些细节,maven-release-plugin让该工作变得非常快速简便,不易出错。maven-release-plugin的各种目标通常直接在 命令行调用,因为版本发布显然不是日常构建生命周期的一部分。

 

maven-resources-plugin

http://maven.apache.org/plugins/maven-resources-plugin/

为了使项目结构更为清晰,Maven区别对待Java代码文件和资源文件,maven-compiler-plugin用来编译Java代码,maven-resources-plugin则用来处理资源文件。默认的主资源文件目录是src/main/resources,很多用户会需要添加额外的资源文件目录,这个时候就可以通过配置maven-resources-plugin来实现。此外,资源文件过滤也是Maven的一大特性,你可以在资源文件中使用${propertyName}形式的Maven属性,然后配置maven-resources-plugin开启对资源文件的过滤,之后就可以针对不同环境通过命令行或者Profile传入属性的值,以实现更为灵活的构建。

 

jetty-maven-plugin

http://wiki.eclipse.org/Jetty/Feature/Jetty_Maven_Plugin

在进行Web开发的时候,打开浏览器对应用进行手动的测试几乎是无法避免的,这种测试方法通常就是将项目打包成war文件,然后部署到Web容器 中,再启动容器进行验证,这显然十分耗时。为了帮助开发者节省时间,jetty-maven-plugin应运而生,它完全兼容 Maven项目的目录结构,能够周期性地检查源文件,一旦发现变更后自动更新到内置的Jetty Web容器中。做一些基本配置后(例如Web应用的contextPath和自动扫描变更的时间间隔),你只要执行 mvn jetty:run ,然后在IDE中修改代码,代码经IDE自动编译后产生变更,再由jetty-maven-plugin侦测到后更新至Jetty容器,这时你就可以直接 测试Web页面了。需要注意的是,jetty-maven-plugin并不是宿主于Apache或Codehaus的官方插件,因此使用的时候需要额外 的配置settings.xml的pluginGroups元素,将org.mortbay.jetty这个pluginGroup加入。

 

常见问题

dependencies和dependencyManagement,plugins和

pluginManagement

有什么区别?

dependencyManagement是表示依赖jar包的声明,即你在项目中的dependencyManagement下声明了依赖,maven不会加载该依赖,dependencyManagement声明可以被继承。

dependencyManagement的一个使用案例是当有父子项目的时候,父项目中可以利用dependencyManagement声明子项目中需要用到的依赖jar包,之后,当某个或者某几个子项目需要加载该插件的时候,就可以在子项目中dependencies节点只配置 groupId 和 artifactId就可以完成插件的引用。

dependencyManagement主要是为了统一管理插件,确保所有子项目使用的插件版本保持一致,类似的还是plugins和pluginManagement。

转载于:https://www.cnblogs.com/panxuejun/p/6694584.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/488627.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

人类为什么不会被人工智能取代?

来源:人机与认知实验室〔摘要〕文章旨在对人工智能的技术本质进行分析,以回应为什么人类不会被人工智能取代的问题。通过历史分析的方法,以“器官投影说”等技术哲学思想作为分析工具,回顾了人工智能技术的历程。发现在理论上&…

工作组服务器操作系统,工作组服务器操作系统

工作组服务器操作系统 内容精选换一换弹性云服务器操作系统无法正常启动时,或云服务器系统运行正常,但需要对系统进行优化,使其在最优状态下工作时,用户可以使用重装弹性云服务器的操作系统功能。重装操作系统后弹性云服务器IP地址…

270 扩展固态硬盘_游戏人的扩展坞应该是怎样?

为何现在越来越多的游戏爱好者开始使用游戏扩展坞?原因其实很简单,如今游戏笔记本也慢慢往轻薄本发展,拓展坞的加入可让笔记本实现台式机的玩机体验,通过扩展坞可以实现现在许多游戏本不具备的功能,比如外接超高清显示…

几十亿打水漂!世界最大移动通信展MWC因疫情33年来首次取消,多方损失惨重...

资料来源:新智元、AI前线物联网智库 整理发布转载请注明来源和出处北京时间2月13日早晨(今晨),世界移动通讯展(MWC)主办方GSMA正式宣布取消原定于本月24日至27日在西班牙巴塞罗那举办的MWC2020展会。这也是…

eslint vscode 自动格式化_vscode保存代码,自动按照eslint规范格式化代码设置

vscode保存代码,自动按照eslint规范格式化代码设置编辑器代码风格一致,是前端代码规范的一部分。我们现在前端绝大部分都在使用eslint,或者将要把代码改为eslint,那么此时我们怎么方便使用这个规范呢,下面我来介绍一下…

虚拟化服务器类型,虚拟化服务器类型

虚拟化服务器类型 内容精选换一换本次Ceph集群使用TaiShan服务器部署,三个Ceph节点采用三台为TaiShan 200服务器(型号2280);K8s节点两台均采用TaiShan 200服务器(型号2280)。每台服务器配备4个SAS HDD,一块用做OS盘,三块用作存储盘…

异常01

一、异常对象的产生原因和处理方式 二、异常的抛出 1 public class Demo01 {2 /*3 * Throwable:Exception、Error4 * Exception->RuntimeException5 * 异常中的关键字:throw,在方法内部,抛出异常6 * 7 * 方法中声明…

核酸和CT同时用, 听谁的?——兼释一天新增一万多

笔者两天前的文章 新冠病毒检验的可信度和概率预测分析了为什么核酸检验会漏报,为什么要使用CT辅助确诊。今天爆出新闻,新增确诊约15000人,但是其中临床13332人。临床以前是疑似和确诊之间的病人,为什么这么多临床病人都算是确诊&…

access update语句执行_统一VBA中SQL语句执行的方法

要在 Access 中用 VBA 中执行操作查询,在不创建查询对象的前提下,一般主要有3种方法:1. Access本身的方法:DoCmd.RunSQL strSQL2. DAO的方法:CurrentDb.Execute strSQL3. ADO的方法:CurrentProject.Connect…

算子基本思想_2.2 量子力学基本假设 Part 2

目录页:https://zhuanlan.zhihu.com/p/133306966这次文章主要介绍第三公设的一些应用2.2.4 区分量子态(Distinguishing quantum states)第三公设的一个重要应用就是区分量子态。在宏观世界,一个物体的不同状态至少在原则上是可以区分的。打个比方&#x…

一个人越聪明他大脑皮层神经元之间的联系就越少

来源:科学杂志 这是波鸿鲁尔大学的神经科学家与ErhanGen博士和Christoph Fraenz博士合作进行的一项研究的结果。这项研究是使用特定的神经影像技术进行的,该技术可在微观结构水平上洞悉大脑的连线。波鸿生物心理学研究小组的团队与阿尔伯克基新墨西哥大学…

力扣题目学习笔记(OC + Swift)21. 合并两个有序链表

21. 合并两个有序链表 链表解题经典三把斧: 哑巴节点栈快慢指针 此题比较容易想到的解法是迭代法,生成哑巴节点,然后迭代生成后续节点。 方法一、迭代法 Swift func mergeTwoLists(_ list1: ListNode?, _ list2: ListNode?) -> Li…

git查询当前目录下的文件列表_linux下查找文件,看这篇就够了

linux下文件查找命令用法总结。前言我们经常需要在linux系统中查找一个文件,或需要知道哪些文件包含已知的特有信息,便于快速对比排查、分析问题,那么如何准确高效查找呢?其实在linux下可查找文件的命令不止一个,命令附…

hive xmlserde_hive多分隔符

hive在建表时,通常使用ROW FORMAT DELIMITEDFIELDS TERMINATED BY "|#" 来限定数据中各个字段的分隔符,这种方式只支持单个分隔符,即:实际只会按照"|"进行分割,若想实现支持多分隔符,有…

Algorithm-Gossip(4) 三色棋(Three_Color_Flag)

前言 This Series aritcles are all based on the book 《经典算法大全》; 对于该书的所有案例进行一个探究和拓展,并且用python和C进行实现; 目的是熟悉常用算法过程中的技巧和逻辑拓展。 提出问题 Algorithm Gossip: 三色棋(Three_Color_Flag&#xff…

人工智能如何推动神经科技发展?

来源 | Forbes作者 | Margaretta Colangelo编译 | 科技行者神经科技以人类神经系统原理为基础,旨在研究人类大脑这一极为复杂的模型架构。在实际作用方面,神经科技将帮助研究人员了解大脑功能与引发功能障碍的原因,并助力医生治疗各类神经系…

tomcat lifecyclelistener_继续,来聊聊Tomcat的容器

作者:不学无数的程序员链接:https://urlify.cn/jYZFFf在这篇文章《Tomcat是如何运行的?整体架构又是怎样的?》中我们简单介绍了容器的概念,并且说了在容器中所有子容器的父接口是Container。在死磕Tomcat系列(2)——En…

java 绘制长方形_Java入门:绘制简单图形

在上一节,我们学习了如何使用swing和awt工具创建一个空的窗口,本节学习如何绘制简单图形。基本绘图介绍Java中绘制基本图形,可以使用Java类库中的Graphics类,此类位于java.awt包中。在我们自己的java程序文件中,要使用…

web面试常见问题补充

jquery Ajax $ajax({ Url:”test.html”,-----发送请求的地址 Async:true;------异步操作 Cache:true,-----可以从缓冲中加载 Type:”GET”,------请求方法 Datatype:”json”,-------服务器返回数据类型 Sucess:function(data){ ----------调用成功语句 If(data”OK”){ Conso…

如何与病毒搏斗?这部BBC“史诗级大片”告诉你答案

来源:惠在湖北 我们知道,在目前没有特效药和疫苗的情况下,被治愈的新型冠状病毒肺炎患者,离不开医学的帮助,而治愈的关键,依靠的是人体自身的免疫力。病毒是如何入侵的?免疫力从何而来&#xff…