持续集成(CI)是将多个团队成员贡献的代码频繁持续的构建并给与反馈,而不必将寻找和修复缺陷的过程放在开发后期。在典型的持续集成周期中,代码首先被周期性的从版本控制服务器(如CVS或Subversion)中更新下来,随后调用自动化编译脚本(如Ant或Maven)编译,并运行所有测试用例,给出结果分析的报告。
java.net上的开源工具Hudson便是一款优秀的持续集成工具,目前的发展速度很快,并且在吸收了众多CI服务器的优点和长处。在自动构建工具支持方面,Hudson可以同Maven紧密集成,并基于Maven依赖图确定需要重新编译的项目。
作为CI服务器,在Hudson项目的官方站点下载War格式的安装包后,可以方便的部署在GlassFish或Tomcat容器之上。在Hudson中,配置一个新的项目也十分快速直观,在新建 Hudson工程时填写名称和描述信息、设定检查代码储存库的时间间隔、指定本地代码编译路径、指定储存库的访问路径和授权用户、填写工程和分支名称以及构建完成后的动作等,就完成了整个CI工程的配置工作。
在结果展示方面,用户可以在编译日志中查看Hudson通过不同颜色标记列出的信息。Hudson还提供了易用的报表功能,并拥有强大的插件支持,如具有能显示测试结果趋势等信息的插件,以及随时间轴跟踪Bugs并监控代码覆盖的插件。在通知机制方面,Hudson可以方便的与用户建立联系,Hudson 提供了电子邮件通知选项,还支持以RSS方式输出报错通知。
目前,包括NetBeans项目本身以及Ruby IDE在内的众多项目都在使用Hudson实现持续集成,更多Hudson的相关内容,可以在Hudson的Wiki中查看并了解详细的使用方式。
同时Hudson支持插件扩展,你可以通过其的插件管理功能从网络上下载你所需要的插件,也可以自己为所在的工作团队创建符合需要的插件。下面我就来介绍下如何开发一个Hudson的插件
首先你要有Maven 2和JDK1.6以上,这是必须的。然后在你的Maven 2的setting.xml 文件中加入下列代码
<settings>
..
<profiles>
<profile>
<id>hudson</id>
<activation>
<activeByDefault />
</activation>
<pluginRepositories>
<pluginRepository>
<id>m.g.o-public</id>
<url>http://maven.glassfish.org/content/groups/public/</url>
</pluginRepository>
</pluginRepositories>
<repositories>
<repository>
<id>m.g.o-public</id>
<url>http://maven.glassfish.org/content/groups/public/</url>
</repository>
</repositories>
</profile>
</profiles>
<activeProfiles>
<activeProfile>hudson</activeProfile>
</activeProfiles>
<pluginGroups>
<pluginGroup>org.jvnet.hudson.tools</pluginGroup>
</pluginGroups>
..
</settings>
这样会将你的Maven指向有着Hudson-related Maven plugins的仓库,而且允许你使用Hudson Maven plugins的短名字来调用相关的插件(例如:hpi:create 代替org.jvnet.hudson.tools:maven-hpi-plugin:1.23:create)。
接着在CMD中输入
mvn hpi:create
之后会问你一些如groupId和artifactId之类的问题,按照需要来填写就好了。
完成后计算机会自动的创建了一个项目,里面有一些模板代码,可供你学习如何开始写一个Hudson的插件,后面的代码全部来自模版代码。如果你需要在Eclipse里编辑插件可以执行
mvn -DdownloadSources=true eclipse:eclipse
然后你就可以在Eclipse中导入这个项目并开始开发了。
待续……
分享到:
相关推荐
《Hudson 1.293 分析:构建与部署自动化工具的核心魅力...通过深入挖掘“hudson1.293.part1.rar”中的内容,我们可以更全面地了解Hudson如何为当时的软件开发带来变革,以及如何影响了后续的持续集成工具的设计和发展。
在本资源中,"Eclipse Web开发从入门到精通(实例版)所有代码 光盘下载(part 3)"提供了书籍"Eclipse Web开发从入门到精通(实例版)"第十二章之后的源代码,这对于正在学习或已经深入Eclipse Web开发的读者来说是...
UI框架对canvas进行分层 1.base为基础层,放基础界面,主游戏菜单、操作杆、小地图等; 2.main为主业务层,放全部业务界面,背包、榜单等 3.toast层,放吐司 4.loading层,放loading界面 使用方式: 1.在场景中挂上UIManager脚本,并在游戏启动时进行初始化,传入资源加载器 2.显示界面直接UIManager.ShowPanel<T>(),不需要其他操作 3.隐藏界面UIManager.ClosePanel()
IMG_1399.PNG
【毕业设计】java-springboot-vue教师工作量管理系统实现源码(完整前后端+mysql+说明文档+LunW).zip
python教程学习
【深圳来觅数据信息科技-2025研报】减产提价!多重因素影响,国内存储芯片逐步崛起.pdf
python学习资源
本协力服装厂服装生产管理系统设计目标是实现协力服装厂服装生产的信息化管理,提高管理效率,使得协力服装厂服装生产管理作规范化、科学化、高效化。 本文重点阐述了协力服装厂服装生产管理系统的开发过程,以实际运用为开发背景,基于Springboot框架,运用了Java编程语言和MYSQL数据库进行开发,充分保证系统的安全性和稳定性。本系统界面良好,操作简单方便,通过系统概述、系统分析、系统设计、数据库设计、系统测试这几个部分,详细的说明了系统的开发过程,最后并对整个开发过程进行了总结,实现了服装生产相关信息管理的重要功能。 本协力服装厂服装生产管理系统运行效果稳定,操作方便、快捷,界面友好,是一个功能全面、实用性好、安全性高,并具有良好的可扩展性、可维护性的服装生产管理平台。 关键词:服装生产管理,Java编程语言,Springboot框架,MYSQL数据库
网络编程,资源和大家上学的时候的差不多,tcp
vmware虚拟机安装教程
【毕业设计】java-springboot-vue教师人事档案管理系统实现源码(完整前后端+mysql+说明文档+LunW).zip
【毕业设计-java】springboot-vue会员制医疗预约服务管理系统实现源码(完整前后端+mysql+说明文档+LunW).zip
比赛前开源题目
UniApp开发一个简单的记事本应用文字教程
内容概要:本文档详细介绍了C#编程语言的基础知识和高级特性的相关内容。首先阐述了C#语言的特点和应用场景,涵盖其简单、安全及面向对象三大优点。接着讲述了准备工作的关键步骤,重点提及了开发工具Visual Studio的安装以及推荐的经典书籍和学习资源。文档深入解析了C#基础语法的各个要素,包括数据类型、变量与常量、运算符、控制结构,并结合代码实例强化理解。面向对象编程部分,文档讲解了类与对象的概念,以及继承、多态和封装的原则,并附带具体示例说明,以便读者更容易理解面向对象的理念。此外,文档对比了.NET Framework和.NET Core两大框架的区别和优势,并介绍了一些常用的类库,使开发者在不同平台环境下都可以顺利开发高质量的软件。最后一章提供了一些建议和资源推荐,如参与开源项目、加入技术社区等,为学习者的成长之路指明方向。 适合人群:希望初次接触C#编程的人士、希望通过系统学习达到掌握C#的初级开发者,亦适用于有一定C#经验,想巩固和提升面向对象思想及相关技术的专业技术人员。 使用场景及目标:该文章可以帮助初学者建立完整的C#编程基础框架,快速上手机编程,并引导他们深入了解面向
仅供资料参考,YeeCOM移讯通DTU连接OneNet平台MQTT说明使用手册。
python学习一些项目和资源
python学习资源
【毕业设计-java】springboot-vue家具销售电商平台实现源码(完整前后端+mysql+说明文档+LunW).zip