《Maven官方文档》Maven 开发
译者|carvendy
编辑|包包
Maven 开发
这文档描述怎么入门开发Maven。这是一个独立页来描述怎么构建Maven的。
找一些工作来做
首先你需要一些事情来做!解决方案可以在几个JIRA项目中找到。
JIRA解决方案 当你找到一个你需要的解决方案,工作想在解决方案中加入日志,所核心开发和其他人在寻找以了解其他人已经在什么。
哪里是源码?
看 https://maven.apache.org/source-repository.html 信息。Maven项目使用了git和svn和本页跟踪情况.
不要忘记单元测试!
你将找到很多单元测试在maven-3的树中。如果可能,创建或者修改单元测试证明问题并修复。
如果问题例子不能被安装的单元测试,加入到集成测试。之前提交分支,在任何用例,你用该运行所有集成测试。测试需要空的资源仓库。看核心IT用例文档里面有更多细节。
创建和提交补丁
当你已经解决了一个问题或者是完成了一个成果,创建一个补丁并加入到讨论的问题当中。创建补丁的指引:
补丁是仓库,不是标签。除此之外,你的补丁是已经过时的,而且没有何时的开发头。
总是从你的maven项目根目录创建。例如,pom.xml就在哪里。
如果你的这部分工作没有JIRA问题,现在创建一个JIRA版本。
文件的名字是MNG-<issue number>-<artifact id>.patch。
将补丁放到你所处理的JIRA问题(不要它的拷贝注释)。当添加补丁的时候,添加注释说明你做了什么。很快,一些人将会同意这个补丁和关闭问题。
一个创建补丁命令行的例子:
$ svn diff > MNG-123-maven-core.patch
如果挑选一个问题并已经存在了分支,你可以从这个补丁 JIRA获取,并使用它来工作。如果你使用UNIX 平台或者 Cygwinwget和patch命令是可用的。
$ wget -O - -q <URL to the patch from JIRA> | patch -p0
如果补丁在你本地文件MNG-123.patch而且你想同意使用这个命令:
$ patch -p0 < MNG-123.patch
一些笔记:
如果使用其他工具创建补丁,要确认补丁不在绝对路径之中。补丁在绝对路径是没有用的,很多时候没有和你相同的目录结构。
确认你符合我们的代码规范,是更多。
补丁接纳的条件
这里有一系列关于补丁条件,判断依据:
是否有效的而且是有打算的。这是很明显的。
它是否符合项目的意图。有些补丁可能是不可采取,因为它和当前的开发社区有着不同的意图。在贡献补丁之前需要讨论好问题,所以你不确定的话,就先在邮件列表里面讨论一下。如果你有不同的意见,欢迎你来讨论(有新的意见)并呼吁邮件列表上的人一起讨论。
是否包含测试。任何补丁相关的功能都需要有单元测试或者集成测试。这可以很明显地修复bug(这是需要的),如果没有这个作为基础就不行了。尽量小,改变的时候也不会影响自动化测试的覆盖面。做一个社区,关注当前新增的覆盖面,因为这些区域没有受到自动化测试。
是否包含文档。所有新的功需要文件记录反馈给用户,如果文档很粗糙那么功能的推广就会很慢。虽然粗糙是可以被接受的,但是不完整就不可以了。在自动化测试的时候,是尽量通过文档覆盖的内容。
最重要的是不要气馁。
同样需求的提交者应该对彼此好一点。
并记住,欢迎你来贡献。
涉及的项目:
Maven 有少部分依赖这些项目:
Plexus
plexus 是一个成熟的容器,支持不同组件的生命周期。这是原生的生命周期,就像是现代的IOC容器,使用需要字段注入来配置。所有Maven的核心功能是Plexus是组件。
了解更多关于 Plexus.
Modello
Modello 是简单的工具,代表对象模板,用来生成代码和资源。Maven使用Modello来生成所有Java对象,XML的读写,XML Schema和HTML 文档。了解更多Modello。
Mojo
“Mojo”给Maven做了两件事情:Maven’s插件API和独立的Mojohaus管理大量插件。Mojohaus项目本来是Maven非核心插件中。一些比较低的功能逐渐变成了这个项目的一部分。
子项目
Maven Surefire
Surefire是一个测试框架。它使用了常规的JUnit测试所以你不需要改变代码来使用。它支持BeanShell和Jython脚本测试,有特殊的“电池”来测试验收和Web测试的XML-RPC代码功能测试。读更多关于Surefire。
Maven Doxia
Doxia是Maven文档引擎。这是规范和转换的API,习惯用于插件的文档输入和输出。 你可以读更多关于Doxia,还有当前所支持的[文档格式](https://maven.apache.org/doxia/references/index.html。
Maven SCM
Maven SCM (源码控制管理)是在Maven的依赖中是可以重复使用的API,它被用于你关于SCM涉及到的Maven插件。Maven的部分核心没有依赖 Maven SCM.读更多关于SCM。
Maven Wagon
Maven Wagon是一个独立的API,转换文件和文件夹。Maven的核心使用了Wagon API来下载和上传组件和组件元数据,还有网站插件使用它来发布到网站。读更多关于Wagon
喜欢本文的朋友,欢迎关注公众号 并发编程网,收看更多精彩内容
《Maven官方文档》Maven 开发相关推荐
- 《maven官方文档》5分钟开始Maven
原文地址 前提 你必须明白如何在电脑上安装软件.如果你不知道如何做,请向你学校.办公室里等的人请教下,或者付费给他人让他们解释给你.Maven邮件组不是寻求这个建议的最好地方. 安装 Maven是个J ...
- 《Maven官方文档》POM文件(一)
什么是POM? POM(project object model)包含了工程信息和工程的配置细节,Maven使用POM文件来构建工程.POM文件包含了工程中的大部分默认值.举个例子,target是默认 ...
- Poco 库开发-教你如何读Poco的官方文档
引言 在使用任何一种框架开发的时候,都不免要阅读官方的文档. 下面就讲述如何来读Poco库的官方文档 Poco库 在我们下载好Poco 后,会有两个文件夹,一个是放文档的doc,另外一个就是代码了,这 ...
- 微信开发官方文档部分整理
微信开发官方文档(微信所有功能开发文档的入口) https://developers.weixin.qq.com/miniprogram/dev/framework/ 微信支付 微信支付开发文档 ht ...
- 微信小程序开发之官方文档学习(一)
小程序宿主环境 渲染层和逻辑层 小程序的运行环境分成渲染层和逻辑层:WXML 模板和 WXSS 样式工作在渲染层,JS 脚本工作在逻辑层.渲染层和数据相关:逻辑层负责产生.处理数据,通过 Page 实 ...
- [下载]黑莓BlackBerry开发官方文档系列
原网址:http://appstory.csdn.net/?p=2868 [下载]黑莓BlackBerry开发官方文档系列 分类: BlackBerry 推荐者:ming_ke| 我有话说 本文是关于 ...
- HarmonyOS(一) 快速开始学习鸿蒙开发,官方文档学习路线解析
系列文章目录 HarmonyOS(一):快速开始学习鸿蒙开发,官方文档学习路线解析 HarmonyOS(二):应用开发环境搭建准备 HarmonyOS(三):创建你的第一个HelloWorld应用 文 ...
- 基于vue的微信小程序开发5分钟上手教程(官方文档转)
使用手册 mpvue 继承自 Vue.js,其技术规范和语法特点与 Vue.js 保持一致. 注:其实就是官方文档,只是习惯看博文学习才直接copy过来的,详见官方文档 本文档适用于有一定 Vue.j ...
- 【pytest官方文档】解读- 开发可pip安装的第三方插件
在上一篇的 hooks 函数分享中,开发了一个本地插件示例,其实已经算是在编写插件了.今天继续跟着官方文档学习更多知识点. 一个插件包含一个或多个钩子函数,pytest 正是通过调用各种钩子组成的插件 ...
最新文章
- 刘忠范院士:新型研发机构建设成了口号
- 帝国cms后台使用savesufer.js生成大音频audio彩色频谱数据
- 百练OJ:2767:简单密码
- jsoup获得css,Jsoup代码解读之五-实现一个CSS Selector
- 深入解析PHP中逗号与点号的区别
- 实现数据库的增删改查
- [SpringBoot2]文件上传_单文件与多文件上传的使用
- dpm码识别_如何读取直接零件打标码(DPM)
- opengl 关于glGenBuffers函数没有定义
- IBM AIX5.3 linux下C/C++实现HTTPS接口
- Word参考文献交叉引用——连续多项引用
- 程序员眼中的中国传统文化-王阳明《传习录》3
- macos安装盘第三方工具制作_制作 macOS Mojave U盘USB启动安装盘方法教程 (全新安装 Mac 系统)...
- 计算机mod函数,MOD函数的公式语法及使用方法实例
- 纯手工html+css实现静态游戏网首页(免费拿源码)
- Python 整型、浮点型、字符串型、布尔型转换,基础运算符
- THINKPHP5(TP5)新手入门必看教程
- sipjs 保存mp4文件_微信视频号视频怎么下载,视频号视频怎么保存到手机
- 微信小程序——云开发的安全规则
- 浅析文本挖掘(jieba模块的应用)