IBM®
跳转到主要内容
    中国 [选择]    使用条款
 
 
Select a scope: Search for:    
    首页    产品    服务与解决方案     支持与下载    个性化服务    
跳转到主要内容

developerWorks 中国  >  Rational  >

Jazz 系列: 开始设置 Jazz Build

developerWorks
文档选项

未显示需要 JavaScript 的文档选项

英文原文

英文原文


级别: 高级

Jazz 技术文档团队 Jazz.net, 编辑, IBM Rational

2008 年 6 月 05 日

本文档旨在帮助构建脚本编写人员了解 Jazz Build 技术的用途,以及帮助使用 Jazz 的团队设置构建。有关使用 Jazz Build 的用户级别的指南,请参阅 “Jazz 入门教程”。

Jazz 资源中心

请访问 Jazz 资源中心,这里汇集了丰富的 Jazz 平台中文技术资源。您可以通过这里了解更多关于 Jazz 平台和相关技术的信息。

Arrow Jazz 资源中心
RSS 订阅 Jazz 相关文章和教程的 RSS 提要


Rational Team Concert 产品专题

访问 Rational Team Concert 产品专题,了解 Rational Team Concert 产品家族的产品特性,并下载 RTC 的免费版和试用版。

Arrow Rational Team Concert 产品专题
RSS 订阅 Rational Team Concert 相关文章和教程的 RSS 提要

引言

本文档旨在帮助构建脚本编写人员了解 Jazz Build 技术的用途,以及帮助使用 Jazz 的团队设置构建。有关使用 Jazz Build 的用户级别的指南,请参阅 “Jazz 入门教程”。

Team Build 组件将团队的构建系统集成到 Jazz 中,并为团队提供构建感知性。这是通过构建进度监视、构建警告、构建结果查看和构建与 Jazz 中的其他构件(例如更改集和工作项)之间的联系来实现的。

Jazz Build 的主要目的是支持采用 Apache Ant 编写的构建脚本。可以使用其他脚本技术,但是需要对 Ant 的调出以实现开发人员的细粒度构建感知性。Jazz 提供了若干 Ant 任务,包括用于跟踪构建进度和将构建构件发布到 Jazz 存储库中的任务。有些现有的构建脚本无需修改即可与 Jazz 一起使用,而其他构建脚本则需要在适当位置添加少量 Jazz Ant 任务来进行细微的修改。

构建环境概述

典型的构建环境将使用一堆工具,其中包括至少一个构建引擎和一个或多个构建脚本。诸如 Jazz Build Engine 之类的构建引擎启动将运行构建脚本的过程,并收集输出。您必须提供执行详细任务的构建脚本,以编译、测试和进一步处理代码和构建构件。可以选择使用 Jazz Build Engine,或者继续使用您已经在使用的构建引擎。可以使用任何现有的构建脚本。使用 Jazz Build Engine 是可选的,但是有些功能仅在使用 Jazz Build Engine 时才可用(将在下面详细描述)。

创建新的 Jazz Build

创建新的 Jazz Build 要求您在 Jazz 存储库中创建 构建引擎构建定义。构建引擎确定将执行构建的构建系统。构建定义确定某个特定的构建及其属性。提供了构建定义向导以帮助您创建这些项。该向导支持两种主要场景:1) 从头创建构建,或者 2) 复制现有的构建并修改该副本。

创建专用构建用户

Jazz Build 工具箱和 Jazz Build 引擎都需要用于登录到 Jazz 存储库的用户和密码。建议您创建专用的构建用户,以使构建所执行的操作(例如创建基准)不像是由真正的用户执行的。在创建该用户之后,可以将构建用户的密码直接放在 Ant 任务或构建引擎调用中。但是对于生产应用,您应该使用 Jazz Build Engine 的 -createPasswordFile 参数来创建加密的密码文件。然后可以通过 Ant 任务的 passwordFile 属性和 Jazz Build Engine 的 -passwordFile 参数调用此加密的文件。

在为构建创建 Jazz SCM 工作区时,务必将工作区的所有者设置为将在构建引擎启动期间或在 Ant 任务的“userId”属性中指定的构建用户。只有这样做,构建才能在接受将要构建的最新更改时修改构建工作区。

运行构建定义向导

要运行该向导,可以从 Eclipse 主菜单上选择 File->New->Other。在向导列表中,您将看到一个 Team 类别,其中包含 Build Definition 向导。

下面将描述该向导中可用的选择。

选择存储库和团队区域

所有构建都必须在给定的存储库和团队区域的上下文中创建。该向导允许您选择适当的存储库和团队区域。

为构建选择模板

如果您使用 Jazz Build Engine,则可以选择 Ant、Maven 或 Command Line 模板。命令行模板使您可以调用任何类型的构建,例如 Perl 或 Make。如果不是使用 Jazz Build Engine,请选择 Generic 模板。

选择预构建和附加选项

该向导将指导您完成预构建选项(例如 Jazz SCM)的选择。如果希望构建来自 Jazz SCM 工作区的文件,则选中此选项。附加选项包括诸如构建计划等选择。

完成向导

完成该向导之后,新的构建定义将在定义编辑器中打开。当您保存定义时,您将接收到关于必须填写任何必填字段的警告。

填写构建的必填字段

取决于所选的模板,您将需要提供更多信息以配置该构建。通常,您将需要提供构建文件或命令行的路径。该定义中的路径可以是绝对路径,或者是相对于构建引擎进程的当前目录的路径。请记住,构建通常在远程构建计算机上运行,因此若要使用绝对路径,则必须能够在运行构建的计算机上解析那些路径。

选择构建引擎

如果已经定义了构建引擎,它们将显示在定义编辑器的 General 选项卡上的“Supporting Build Engines”部分。为了运行构建,您必须选择某个现有的引擎,或者创建新的引擎。您需要记住所选构建引擎的 ID 以便以后使用。如果还没有现有的构建引擎,您可能已经注意到 New Build Definition 向导为您创建了一个“default”构建引擎。

测试新的构建定义

要测试构建,您需要在 Eclipse 中显示以下与构建相关的视图:

  • Team Artifacts —— 显示团队区域及其相关的构建定义和引擎
  • Builds —— 显示构建结果

要测试新的构建,可以通过单击定义编辑器标题中的“Request Build”按钮来请求构建。提交您的请求之后,Builds 视图将打开并显示您的待处理请求。

除非构建引擎处理了待处理的请求,否则该请求将一直显示在那里。您需要启动 Jazz Build 引擎,以使其能够处理待处理的请求。通常,您将在远程构建计算机上运行该引擎,但是对于测试目的,我们将在本地计算机上运行该引擎。

Jazz Build Engine 是一个 Headless Eclipse 命令行应用程序。该引擎包括在 Build Server Toolkit 安装包或 RTC-BuildServerToolkit-*.zip 中。要启动该引擎,可以打开命令提示符或 Shell,并转到 <installpath>/buildsystem/buildengine/eclipse。输入“jbe”并按 Enter 键。假设您的路径中有 Java 5 VM,您将看到该引擎的用法消息。下面是一个示例调用:

jbe -repository https://localhost:9443/jazz -engineId default 
    -userId myUser -pass myPass -sleeptime 1

请注意“engineId”与您在前面创建的构建引擎之间的联系。一旦启动,Jazz Build Engine 将无限期地运行,同时轮询 Jazz 存储库中的请求并处理那些请求。要停止该引擎,可以在命令提示符或 Shell 中按 Control-C。

注意:建议使用 JDK(不是 JRE)来运行该构建引擎,因为从构建中调用的某些工具将需要 JDK。如果在控制台或构建日志中看到消息“Unable to locate tools.jar”,可以尝试使用 JDK 来执行该构建引擎。

启动该引擎之后,请返回到 Team Concert。刷新 Builds 视图。您应该很快看到待处理的请求转换为正在进行的构建。

如果构建没有启动,而是保持待处理状态,请检查构建引擎编辑器:确保您传递给引擎的 engineId 与编辑器中的引擎 ID 匹配,并且您的构建被列为受支持的构建定义,而且引擎被标记为活动的。

如果构建失败,可以打开构建结果并转到 Logs 选项卡,以检查构建日志。

对 Ant 脚本可用的内置属性

在使用 Jazz Build 引擎时,存在几个可供 Ant 脚本使用的属性。 您将需要这些属性,以利用 Jazz Ant 任务来将信息发布到存储库。例如,StartBuildActivityTask 任务使用当前活动来更新构建。这些活动在 Team Concert UI 中可见。这是向团队提供有价值的构建活动感知性的简单机制。

属性名称描述
buildLabel这是由 Jazz Build Engine 生成的构建标签。例如,20080215-1234
buildResultUUID这是构建结果的唯一标识符。任何向构建结果发布进度或信息的任务都必须提供此属性。此属性的值在 ${buildResultUUID} Ant 属性中传递给构建脚本。例如,您通常会在 Ant 脚本中看到此属性的类似如下的用法: buildResultUUID="${buildResultUUID}"
requestUUID这是构建请求的唯一标识符。
buildDefinitionId这是构建定义的友好标识符(不是 UUID)。
repositoryAddress这是发起构建请求的 Jazz 存储库的地址。例如,http://myteam.mycompany.com/jazz
*构建引擎编辑器中定义的所有属性均对 Ant 脚本可用。
* 构建定义编辑器的 Properties 选项卡中定义的所有属性均对 Ant 脚本可用。在发生属性名称冲突的情况下,这些属性将覆盖构建引擎属性。

用户定义属性

如果您的构建脚本需要某些属性,例如 ECLIPSE_HOME,您可以在构建定义或构建引擎的属性选项卡中定义这些属性。在构建定义或构建引擎中定义的属性将对您的 Ant 脚本可用。

通过指定 ${propertyName} 格式,可以在属性值中使用变量。例如,可以在构建引擎中创建一个名为“toolsdir”、值为 /home/build/tools 的属性。然后,在属性值或构建定义编辑器的其他字段中,可以使用 ${toolsdir} 来引用该属性。Jazz Build Engine 紧跟在开始构建之前替换属性变量,并向构建脚本提供替换后的形式。

示例

可以在 <installpath>/buildsystem/buildtoolkit/examples 文件夹中找到更多的示例。

文档说明

Jazz Ant 任务的详细文档说明可以在 Team Concert 帮助目录的“Managing change and releases / Building with Jazz / Jazz build Ant task reference”下面找到。



参考资料

学习

获得产品和技术

讨论
  • 访问 Jazz.net 上的 Jazz 社区。并注册成为 Jazz.net 用户,您可以随时了解 Jazz 项目开发的最新进展,获取免费的 Jazz 平台软件及相关试用版软件下载。

  • 访问 Jazz Space。在 developerWorks 这个专门为 Jazz 平台准备的 Space 里,您将发现更多关于 Jazz 的技术资源和信息,包括博客、产品演示、RSDC 讲座、Podcast、Webcast,以及 基于 Jazz 的商用产品试用版下载等资源。

  • 参加 Rational 大学,与 IBM Rational 专家一起分享 Rational 产品最佳实践。

  • 查看 developerWorks 博客 并加入 developerWorks 社区


关于作者

Jazz.net 是一个 Rational 开放商业软件开发项目。




对本文的评价

太差! (1)
需提高 (2)
一般;尚可 (3)
好文章 (4)
真棒!(5)

建议?







回页首


IBM 公司保留在 developerWorks 网站上发表的内容的著作权。未经IBM公司或原始作者的书面明确许可,请勿转载。如果您希望转载,请通过 提交转载请求表单 联系我们的编辑团队。
    关于 IBM 隐私条约 联系 IBM 使用条款