图书介绍

使用Ant进行Java开发2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载

使用Ant进行Java开发
  • (美)Erik Hatcher,(美)Steve Loughran著;刘永丹,陈洋译 著
  • 出版社: 北京:电子工业出版社
  • ISBN:7121016834
  • 出版时间:2005
  • 标注页数:634页
  • 文件大小:49MB
  • 文件页数:668页
  • 主题词:软件工具,Ant-程序设计;JAVA语言-程序设计

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

使用Ant进行Java开发PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

Part 1 学习Ant1

1.1 何为Ant3

第1章 Ant简介3

1.1.2 为什么我们认为Ant是一个优秀的构建工具4

1.1.1 何为构建过程,我们为什么需要它4

1.2 Ant的核心概念5

1.2.1 示例工程7

1.3.1 集成开发环境10

1.3 为什么要使用ANT10

1.3.2 Make11

1.3.3 其他构建工具13

1.4 Ant的演化史14

1.3.4 立刻就来运行吧14

1.5.1 XP(eXtreme Programming)16

1.5 Ant与软件开发方法16

1.6 示例工程17

1.5.2 Rational统一过程17

1.6.1 文档搜索引擎—Ant示例工程18

1.7 太棒了,可是ANT能否19

1.8.3 Microsoft.NET以及其他语言21

1.8.2 简单的工作流引擎21

1.8 超越JAVA开发21

1.8.1 Web发布引擎21

1.9 小结22

2.1 定义我们的第一个工程23

第2章 开始Ant之旅23

2.3 第二步:编写你的第一个Ant构建文件24

2.2 第一步:检查工具是否已经就绪24

2.3.1 测试构建文件25

2.4 第三步:运行你的第一个构建26

2.4.1 如果构建失败27

2.4.2 查看更多构建细节29

2.5 第四步:强制结构31

2.5.1 布置源文件路径32

2.5.2 布置构建目录33

2.5.3 布置发布目录34

2.5.5 目标依赖35

2.5.4 创建构建文件35

2.5.6 运行新的构建文件36

2.5.7 重新运行构建37

2.5.8 Ant如何处理命令行上的多个目标38

2.6.1 为什么要在Ant内部运行39

2.6 第五步:运行我们的程序39

2.6.3 运行新的目标40

2.6.2 添加执行目标40

2.7 ANT命令行选项41

2.7.2 控制所提供的信息量42

2.7.1 指定要运行的构建42

2.8 最终的构建文件44

2.7.3 获取项目信息44

2.9 小结46

第3章 理解Ant的datatypes和特性47

3.1.2 特性概述48

3.1.1 Datatype概述48

3.1 入门48

3.2 通过〈JAVAC〉介绍DATATYPE和特性49

3.3 路径(Path)51

3.4 文件集(Fileset)52

3.4.2 默认排除项(Default excludes)53

3.4.1 文件集举例53

3.5 模式集(Patternset)54

3.6 选择器(Selector)56

3.7 DATATYPE元素命名57

3.8.1 构建运行时在文件中插入日期戳58

3.8 过滤集(Filterset)58

3.9 过滤链(filterchain)和过滤阅读器(FilterReader)59

3.10.1 Identity映射器61

3.10 Mapper61

3.10.3 Merge映射器62

3.10.2 Flatten映射器62

3.10.5 Regexp映射器63

3.10.4 Glob映射器63

3.10.6 Package映射器64

3.11.3 Filelist65

3.11.2 Dirset65

3.11 其他ANT DATATYPE65

3.11.1 ZipFileset65

3.12 特性(Property)66

3.11.4 ClassFileset66

3.12.1 通过〈property〉任务设置特性67

3.12.3 检查资源的可用性:〈available〉70

3.12.2 〈property〉任务怎样区别于其他任务70

3.12.5 用〈condition〉测试条件72

3.12.4 忽略不必要的步骤:〈uptodate〉以节省时间72

3.12.6 在命令行中设置特性74

3.12.7 用〈tstamp〉创建构建的时间戳75

3.12.8 从XML文件中载入特性76

3.13.1 有条件地执行target77

3.13 使用特性控制Ant77

3.13.3 有条件的构建失败78

3.13.2 有条件的patternset包含/排除(inclusion/exclusion)78

3.14 引用79

3.14.1 特性和引用80

3.14.2 为嵌套的模式集使用引用81

3.15 最佳实践82

3.16 小结83

第4章 使用JUnit进行测试85

4.2 JAVA MAIN()测试86

4.1 重构(Refactoring)86

4.3 JUNIT入门87

4.3.3 断言预期的结果88

4.3.2 运行测试用例88

4.3.1 编写测试用例88

4.3.5 编写测试组件90

4.3.4 测试用例生命周期90

4.3.7 扩展JUnit91

4.3.6 获取及安装JUnit91

4.4.1 先编写测试92

4.4 在我们的应用程序中使用单元测试92

4.4.2 在测试过程中处理外部资源93

4.5.1 组织目录以安放测试94

4.5 JUNIT任务—〈JUNIT〉94

4.5.2 配置JUnit到构建过程95

4.6.1 捕获测试结果97

4.6 测试失败意味着构建失败97

4.6.2 运行多重测试99

4.7 生成测试结果报告100

4.6.3 创建你自己的结果(result)formatter100

4.7.1 生成报告且允许当测试失败时中止构建102

4.7.3 初始化测试环境103

4.7.2 从命令行运行单个测试用例103

4.7.4 其他测试问题104

4.8 短路测试105

4.8.1 处理大量测试108

4.9 最佳实践109

4.10 小结110

5.1 为什么需要运行外部程序111

第5章 运行程序111

5.2 运行JAVA程序112

5.2.1 介绍〈java〉任务113

5.2.2 设置classpath114

5.2.3 参数115

5.2.4 定义系统特性116

5.2.5 在新JVM中运行程序117

5.2.7 控制新JVM118

5.2.6 设置环境变量118

5.2.8 使用failonerror处理错误119

5.2.9 执行JAR文件120

5.2.10 调用第三方程序121

5.2.11 在调用之前探查Java程序123

5.3 使用〈EXEC〉启动本地程序124

5.2.12 设置超时124

5.3.2 处理错误126

5.3.1 设置环境变量126

5.3.4 制作并运行一个shell命令127

5.3.3 处理超时127

5.3.5 在程序被调用之前进行探测129

5.4 使用〈apply〉进行批量执行130

5.5 处理输出131

5.7 最佳实践132

5.6 执行的限制132

5.8 小结133

第6章 工程打包134

6.1.1 如何删除文件135

6.1 移动、复制和删除文件135

6.1.2 怎样复制文件136

6.1.3 如何移动文件137

6.1.4 过滤138

6.2.1 构建发布代码及其文档139

6.2 为打包做准备139

6.2.2 加入数据文件141

6.2.3 准备编制文档142

6.2.4 准备安装脚本和文档143

6.2.5 为重发布准备库145

6.3 创建存档文件146

6.3.2 创建一个JAR文件148

6.3.1 JAR文件148

6.3.3 测试JAR文件149

6.3.4 创建JAR清单150

6.3.7 签署JAR文件152

6.3.6 JAR文件的最佳实践152

6.3.5 向JAR中增加额外元数据152

6.4.1 创建二进制发布154

6.4 创建ZIP文件154

6.4.2 创建源代码发布156

6.4.4 Zip文件的最佳实践157

6.4.3 合并Zip文件157

6.5 创建TAR文件158

6.6 使用WAR文件创建WEB应用程序160

6.7 打包测试161

6.8 小结162

第7章 部署163

7.1.2 部署所用的工具164

7.1.1 再看这些任务164

7.1 典型部署问题164

7.2 用于部署的任务165

7.2.2 探测服务器的有效性166

7.2.1 使用〈ftp〉进行文件传输166

7.2.3 使用〈sleep〉让构建暂停168

7.2.4 Ant的email任务169

7.2.5 使用〈get〉获取远程文件170

7.3 基于FTP的打包应用程序发布171

7.2.6 使用任务进行部署171

7.3.1 通过〈input〉任务获得信息172

7.4 基于Email的打包应用程序发布173

7.5 本地部署到Tomcat4.x174

7.5.1 Tomcat的管理servlet API175

7.5.2 使用Ant部署到Tomcat176

7.6 远程部署到Tomcat181

7.6.1 插曲:使用〈antcall〉调用目标182

7.6.2 在部署中使用〈antcall〉185

7.8 小结187

7.7 对部署进行测试187

8.1 我们目前的应用程序188

第8章 综合运用Ant188

8.2 构建定制的Ant任务库189

8.3 载入跨工程的共用特性194

8.4 处理版本依赖196

8.4.1 安装库的新版本198

8.5.4 使其可移植200

8.5.3 支持自动部署200

8.5 构建文件的哲学200

8.5.1 一开始就要把结果放在心上200

8.5.2 将测试纳入构建200

8.6 小结201

8.5.5 允许用定制201

Part 2 应用Ant203

第9章 在开发项目中使用Ant205

9.1.1 分析你的项目206

9.1 设计基于Ant的构建过程206

9.1.3 完善构建文件208

9.1.2 建立核心构建文件208

9.2 移植到ANT209

9.3 移植的十个步骤210

9.3.2 从基于IDE的项目移植211

9.3.1 从基于Make的项目移植211

9.4.1 重构构建文件212

9.4 主构建:管理大型项目212

9.4.3 示例:基本主构建文件213

9.4.2 引入〈ant〉任务213

9.4.4 设计可升级的灵活主构建文件215

9.5.1 如何控制子工程的特性221

9.5 管理子工程构建221

9.5.2 从主构建文件中继承特性和引用223

9.5.3 在〈ant〉里声明特性和引用224

9.5.4 通过XML文件片断共享特性225

9.5.5 使用XML文件片断共享目标227

9.6 创建可重用的库构建文件228

9.7 展望未来:让大型项目支持演化230

9.8 ANT项目的最佳实践231

9.8.2 实现过程232

9.8.1 管理库232

9.9 小结233

第10章 超越Ant的核心任务234

10.1.1 那么,什么是“可选”任务235

10.1 理解任务的种类235

10.1.2 Ant的主要可选任务236

10.2.1 操控特性文件237

10.2 可选任务实际演练237

10.1.3 为什么需要第三方任务237

10.2.2 为构建期间添加音频反馈和视觉反馈239

10.2.3 添加依赖关系检查241

10.2.4 用JavaCC进行语法解析243

10.2.5 置换正则表达式244

10.3.1 CVS245

10.3 使用软件配置管理任务245

10.3.2 ClearCase246

10.4.1 用〈taskdef〉定义任务247

10.4 使用第三方任务247

10.5.1 Checkstyle248

10.5 几个知名的第三方任务248

10.5.2 Torque—对象-关系映射250

10.6 ANT-CONTRIB任务253

10.7 项目间共享任务定义258

10.8 最佳实践258

10.9 小结259

第11章 XDoclet260

11.2 生成TO-DO列表261

11.1 安装XDoclet261

11.3 XDoclet的体系结构262

11.3.1 XDoclet的Ant任务263

11.3.2 模板化264

11.4 编写自己的XDoclet模板265

11.3.3 XDoclet如何工作265

11.4.1 代码生成267

11.4.2 按类生成与单文件生成的比较272

11.5 高级XDoclet273

11.4.3 过滤要处理的类273

11.5.2 建立定制标记处理器274

11.5.1 定制子任务274

11.6.1 XDoclet与C#的比较275

11.6 XDoclet的发展方向275

11.7.1 依赖关系检查276

11.7 XDoclet最佳实践276

11.6.2 展望Java的未来:JSR175和JSR181276

11.8 小结277

第12章 web开发278

12.1 WEB应用程序有什么不同279

12.2.1 建立标记库280

12.2 使用标记库280

12.2.2 集成标记库286

12.2.3 使用Ant开发标记库小结287

12.3 编译JSP网页288

12.3.2 使用〈jspc〉任务289

12.3.1 安装〈jspc〉任务289

12.3.3 为部署而编译JSP291

12.4.1 基于filterset的定制292

12.4 定制web应用程序292

12.3.4 其他JSP编译任务292

12.4.2 利用XDoclet定制部署描述文件294

12.5.1 生成新内容297

12.5 生成静态内容297

12.4.3 定制WAR文件中的库297

12.5.2 建立新文件298

12.6 使用HTTPNIT测试WEB应用程序299

12.5.3 修改既有文件299

12.6.1 编写HttpUnit测试300

12.6.2 编译测试302

12.6.4 运行HttpUnit测试303

12.6.3 准备从Ant中运行HttpUnit测试303

12.6.5 整合测试304

12.6.7 Canoo WebTest306

12.6.6 HttpUnit的局限性306

12.7 利用CACTUS进行服务器端测试310

12.7.1 从Ant视角看Cactus311

12.7.2 Cactus如何运作313

12.7.4 Cactus小结314

12.7.3 我们的测试用例登场了314

12.8 小结315

第13章 使用XML317

13.1 导言:关于XML库318

13.2 验证XML319

13.2.1 当文件不合法的时候320

13.2.2 解析XML DTDs321

13.2.3 支持其他的XML验证机制322

13.3 利用XSLT转换XML323

13.3.1 使用XML Catalog datatype325

13.4 生成XML格式的构建日志327

13.3.3 Styler——一个第三方的转换任务327

13.3.2 由XML生成PDF文件327

13.4.1 样式表328

13.4.2 输出文件329

13.4.3 构建日志的后处理330

13.5 将XML数据载入Ant特性331

13.7 小结332

13.6 XML处理的将来332

14.1 EJB概述333

第14章 Enterprise JavaBeans333

14.1.2 EJB JAR334

14.1.1 Enterprise JavaBeans的多种类型334

14.2 一个简单的EJB构建335

14.1.3 厂商相关的情形335

14.3 使用ANT的EJB任务336

14.4 使用〈EJBJAR〉337

14.4.1 厂商相关的〈ejbjar〉处理339

14.5 使用XDoclet进行EJB开发340

14.5.1 XDoclet子任务341

14.5.2 XDoclet的@标记342

14.5.4 Ant特性替换343

14.5.3 利用XDoclet支持不同的应用服务器343

14.6 MIDDLEGEN345

14.7 部署到J2EE应用服务器348

14.8 一个完整的EJB例子349

14.10 小结354

14.9 EJB工程的最佳实践354

第15章 使用Web服务355

15.1 何谓Web服务,何谓SOAP356

15.2 用Ant创建一个SOAP客户端应用程序357

15.1.2 向Java增加Web服务能力357

15.1.1 SOAPAPI357

15.2.1 准备我们的构建文件358

15.2.2 创建代理类359

15.2.4 编译SOAP客户端361

15.2.3 使用SOAP代理类361

15.2.5 运行SOAP服务362

15.3 用Axis和Ant创建一个SOAP服务363

15.2.6 回顾SOAP客户端创建363

15.3.1 构建Web服务的简单方法364

15.4.1 配置Web应用程序367

15.4 向既有Web应用程序添加Web服务367

15.4.3 在构建中包含SOAP服务368

15.4.2 添加库368

15.4.4 测试服务器上的需要类369

15.4.6 部署Web服务370

15.4.5 实现SOAP端点370

15.5.1 导入WSDL371

15.5 为SOAP服务编写客户端371

15.5.2 实现测试372

15.5.3 编写Java客户端375

15.7 构建一个C#客户端376

15.6 什么是互操作,为什么它成其为问题376

15.7.1 条件探测377

15.7.2 在C#中导入WSDL378

15.7.4 构建C#客户端379

15.7.3 编写C#客户端类379

15.7.5 运行C#客户端380

15.8 构建Web服务的严格方法381

15.7.6 回顾C#客户端的构建过程381

15.9 回顾Web服务开发382

15.10 通过SOAP调用Ant383

15.11 小结384

第16章 持续集成386

16.1.1 Windows方法387

16.1 利用操作系统调度Ant构建387

16.2 CRUISECONTROL388

16.1.3 使用脚本388

16.1.2 Unix版本388

16.2.2 这就是Cruise——让构建管理器工作起来389

16.2.1 它如何工作389

16.2.3 报告构建日志395

16.2.7 CruiseControl的优点和缺点396

16.2.6 提示与技巧396

16.2.4 邮件通知与构建标注396

16.2.5 CruiseControl小结396

16.3 ANTHILL397

16.3.1 让Anthill转起来398

16.3.2 Anthill是如何工作的399

16.3.3 Anthill小结400

16.4.1 安装和运行Gump401

16.4 GUMP401

16.4.2 Gump如何运作403

16.4.3 Gump小结404

16.5 持续集成工具的比较405

16.6 小结406

17.1 本地代码的挑战407

第17章 开发本地代码407

17.2.1 交给IDE去做408

17.2 使用既有的构建工具408

17.2.2 使用Make409

17.3.1 安装任务410

17.3 引入〈CC〉任务410

17.3.3 〈cc〉任务快速入门411

17.3.2 添加一个编译器411

17.4 在ANT中构建一个JNI库412

17.4.1 构建JNI库的步骤413

17.4.2 编写Java存根(Stub)414

17.4.3 编写C++++类415

17.4.4 编译C++++源代码416

17.4.5 部署和测试库419

17.5.1 移植C++++源文件422

17.5 实现跨平台422

17.5.2 扩展构建文件423

17.5.4 移植代码424

17.5.3 移植测试424

17.6.1 定义预处理宏425

17.6 深入〈CC〉的细节425

17.6.2 通过〈libset〉链接到库426

17.6.3 配置编译器和链接器427

17.6.4 定制链接器428

17.7 发布本地库429

17.8 小结430

第18章 成品部署431

18.1.1 迥然不同的底层行为432

18.1 不同应用服务器的挑战432

18.1.2 不同的Java运行时行为433

18.1.3 使用不同的API实现进行复制434

18.1.7 服务器相关的管理436

18.1.6 与服务器相关的部署过程436

18.1.4 与供应商相关的库436

18.1.5 部署描述文件436

18.2.2 操作员测试437

18.2.1 操作员用例437

18.2 与操作员齐心协力437

18.2.4 将操作员与构建过程集成438

18.2.3 操作员缺陷跟踪438

18.3.2 为创建档案文件而编写统一的目标440

18.3.1 建立单一的源代码树440

18.3 利用Ant迎接部署的挑战440

18.3.3 运行服务器端Ant进行部署441

18.4.1 〈copy〉任务442

18.4 ANT的强大部署工具介绍442

18.3.4 自动化上载和部署过程442

18.4.3 使用〈telnet〉进行远程控制443

18.4.2 〈serverdeploy〉任务443

18.5.1 计划446

18.5 建立一个成品的部署过程446

18.5.5 远程构建文件build.xml447

18.5.4 构建文件447

18.5.2 目录结构447

18.5.3 配置文件447

18.5.6 为安装到服务器编写构建文件449

18.5.7 上载至远程服务器450

18.5.8 让远程部署转起来454

18.5.9 对部署过程进行回顾455

18.6.1 Tomcat 4.0和Tomcat 4.1456

18.6 部署至特定应用服务器456

18.6.3 HP Bluestone应用服务器458

18.6.2 BEA WebLogic458

18.7 验证部署459

18.6.4 其他服务器459

18.7.2 将时间戳文件添加到应用程序中460

18.7.1 创建时间戳文件460

18.8 最佳实践462

18.7.3 测试时间戳462

18.9 小结463

Part 3 扩展Ant465

第19章 编写Ant任务467

19.1.1 世界上最简单的Ant任务468

19.1 什么是一个真正的Ant任务468

19.1.3 任务的生命周期469

19.1.2 在同一个构建过程中编译和应用一个任务469

19.2.1 Task470

19.2 Ant API入门470

19.2.2 Project471

19.2.5 DirectoryScanner472

19.2.4 Fileset472

19.2.3 Path472

19.2.7 FileUtils473

19.2.6 EnumeratedAttribute473

19.3.1 设置属性474

19.3 任务如何获得数据474

19.3.2 支持嵌套元素480

19.3.3 支持datatypes481

19.3.4 允许自由格式文本482

19.4.1 为任务添加属性483

19.4 建立一个基本的Ant Task子类483

19.4.2 处理元素文本484

19.5 操作FILESET485

19.6 错误处理486

19.8 执行外部程序487

19.7 测试Ant任务487

19.9.1 创建Java程序新进程的示例490

19.9 在任务中执行Java程序490

19.8.1 处理进程输出490

19.8.2 本地执行小结490

19.10 支持任意命名的元素和属性493

19.11 构建任务库495

19.13 小结497

19.12 支持多版本Ant497

第20章 进一步扩展Ant498

20.1 在Ant中使用脚本499

20.1.1 〈script〉约定的隐含对象500

20.1.2 脚本使用小结501

20.2 监听者与日志工具502

20.2.1 编写一个定制监听者503

20.2.2 使用log4j的日志功能506

20.2.3 编写一个定制日志工具509

20.2.4 使用MailLogger513

20.3 开发定制的MAPPER514

20.4 创建定制的SELECTOR515

20.4.1 在构建中使用定制selector516

20.5 实现定制的FILTER517

20.5.1 编写定制filter的reader519

20.6 小结520

附录A 安装523

附录B Ant之XML入门532

附录C IDE集成536

附录D Ant风格的要素544

附录E Ant任务参考562

资源621

索引625

热门推荐