重磅推荐
【内容】
本书一共分为四个部分,以Maven的核心概念和佳实践为主要内容,包含大量实例。部分:基础篇,除了Maven的概念、安装、在Eclipse中的使用以及能让读者迅速上手的实例等常规内容外,还包括开发者在使用Maven时常遇到的问题解答,以及开发者对Maven的误解;第二部分:核心概念篇,以Amazon的图书查询服务为背景案例,依次讲解了与Maven坐标和依赖、Maven仓库、Maven声明周期、Maven插件等相关的核心内容;第三部分:实践篇:包含大量佳实践,其中涉及的问题是开发者在使用Maven时经常会碰到,但是又恨难解决的,包括Maven中的约定、模块划分、依赖的合理管理等内容;第四部分:附录,包括POM详解、Settings详解以及索引等重要内容。
【目录】
前言
致谢
第1章Maven简介/1
11何为Maven/2
111何为构建/2
112Maven是优秀的构建工具/2
113Maven不仅仅是构建工具/3
12为什么需要Maven/4
121组装PC和品牌PC/4
122IDE不是的/4
123Make/5
124Ant/5
125不重复发明轮子/6
13Maven与极限编程/7
14被误解的Maven/8
15小结/9
第2章Maven的安装和配置/10
21在Windows上安装Maven/11
211检查JDK安装/11
212下载Maven/11
213本地安装/12
214升级Maven/13
22在基于UNIX的系统上安装Maven/13
221下载和安装/13
222升级Maven/15
23安装目录分析/15
231M2_HOME/15
232~/m2/16
24设置HTTP代理/17
25安装m2eclipse/18
26安装NetBeans Maven插件/22
27Maven安装 佳实践/24
271设置MAVEN_OPTS环境变量/24
272配置用户范围settingsxml/24
273不要使用IDE内嵌的Maven/25
28小结/26
第3章Maven使用入门/27
31编写POM/28
32编写主代码/29
33编写测试代码/30
34打包和运行/34
35使用Archetype生成项目骨架/36
36m2eclipse简单使用/37
361导入Maven项目/37
362创建Maven项目/39
363运行mvn命令/39
37NetBeans Maven插件简单使用/41
371打开Maven项目/41
372创建Maven项目/42
373运行mvn命令/43
38小结/44
第4章背景案例/45
41简单的账户注册服务/46
42需求阐述/46
421需求用例/46
422界面原型/48
43简要设计/49
431接口/49
432模块结构/49
44小结/50
第5章坐标和依赖/51
51何为Maven坐标/52
52坐标详解/53
53accountemail/54
531accountemail 的POM/54
532accountemail的主代码/56
533accountemail的测试代码/60
534构建accountemail/62
54依赖的配置/62
55依赖范围/63
56传递性依赖/64
561何为传递性依赖/64
562传递性依赖和依赖范围/65
57依赖调解/66
58可选依赖/66
59 佳实践/68
591排除依赖/68
592归类依赖/69
593优化依赖/71
510小结/74
第6章仓库/75
61何为Maven仓库/76
62仓库的布局/76
63仓库的分类/78
631本地仓库/79
632远程仓库/80
633中央仓库/80
634私服/81
64远程仓库的配置/82
641远程仓库的认证/83
642部署至远程仓库/84
65快照版本/85
66从仓库解析依赖的机制/87
67镜像/89
68仓库搜索服务/90
681Sonatype Nexus/90
682Jarvana/91
683MVNbrowser/91
684MVNrepository/92
685选择合适的仓库搜索服务/93
69小结/93
第7章生命周期和插件/94
71何为生命周期/95
72生命周期详解/96
721三套生命周期/97
722clean生命周期/97
723default生命周期/97
724site生命周期/98
725命令行与生命周期/98
73插件目标/99
74插件绑定/99
741内置绑定/100
742自定义绑定/102
75插件配置/104
751命令行插件配置/104
752POM中插件全局配置/104
753POM中插件任务配置/105
76获取插件信息/106
761在线插件信息/106
762使用mavenhelpplugin描述插件/108
77从命令行调用插件/109
78插件解析机制/110
781插件仓库/110
782插件的默认groupId/111
783解析插件版本/111
784解析插件前缀/112
79小结/114
第8章聚合与继承/115
81accountpersist/116
811accountpersist的POM/116
812accountpersist的主代码/118
813accountpersist的测试代码/123
82聚合/124
83继承/127
831accountparent/127
832可继承的POM元素/130
833依赖管理/131
834插件管理/135
84聚合与继承的关系/137
85约定优于配置/139
86反应堆/143
861反应堆的构建顺序/144
862裁剪反应堆/145
87小结/147
第9章使用Nexus创建私服/148
91Nexus简介/149
92安装Nexus/149
921下载Nexus/149
922Bundle方式安装Nexus/150
923WAR方式安装Nexus/151
924登录Nexus/152
93Nexus的仓库与仓库组/152
931Nexus内置的仓库/152
932Nexus仓库分类的概念/154
933创建Nexus宿主仓库/154
934创建Nexus代理仓库/155
935创建Nexus仓库组/156
94Nexus的索引与构件搜索/157
95配置Maven从Nexus下载构件/160
96部署构件至Nexus/163
961使用Maven部署构件至Nexus/163
962手动部署第三方构件至Nexus/164
97Nexus的权限管理/165
971Nexus的访问控制模型/165
972为项目分配独立的仓库/167
98Nexus的调度任务/169
99其他私服软件/170
910小结/171
第10章使用Maven进行测试/172
101accountcaptcha/173
1011accountcaptcha的POM/173
1012accountcaptcha的主代码/175
1013accountcaptcha的测试代码/180
102mavensurefireplugin简介/184
103跳过测试/184
104动态指定要运行的测试用例/186
105包含与排除测试用例/187
106测试报告/188
1061基本的测试报告/189
1062测试覆盖率报告/190
107运行TestNG测试/191
108重用测试代码/193
109小结/194
第11章使用Hudson进行持续集成/195
111持续集成的作用、过程和优势/196
112Hudson简介/198
113安装Hudson/199
114准备Subversion仓库/200
115Hudson的基本系统设置/203
116创建Hudson任务/205
1161Hudson任务的基本配置/205
1162Hudson任务的源码仓库配置/206
1163Hudson任务的构建触发配置/207
1164Hudson任务的构建配置/208
117监视Hudson任务状态/209
1171全局任务状态/209
1172自定义任务视图/211
1173单个任务状态/212
1174Maven项目测试报告/214
118Hudson用户管理/215
119邮件反馈/217
1110Hudson工作目录/218
1111小结/220
第12章使用Maven构建Web应用/221
121Web项目的目录结构/222
122accountservice/224
1221accountservice的POM/224
1222accountservice的主代码/225
123accountweb/230
1231accountweb的POM/230
1232accountweb的主代码/231
124使用jettymavenplugin进行测试/237
125使用Cargo实现自动化部署/239
1251部署至本地Web容器/239
1252部署至远程Web容器/241
126小结/242
第13章版本管理/243
131何为版本管理/244
132Maven的版本号定义约定/245
133主干、标签与分支/246
134自动化版本发布/247
135自动化创建分支/252
136GPG签名/253
1361GPG及其基本使用/254
1362Maven GPG Plugin/255
137小结/258
第14章灵活的构建/259
141Maven属性/260
142构建环境的差异/262
143资源过滤/263
144Maven Profile/265
1441针对不同环境的profile/265
1442激活profile/266
1443profile的种类/269
145Web资源过滤/271
146在profile中激活集成测试/272
147小结/274
第15章生成项目站点/275
151 简单的站点/276
152丰富项目信息/278
153项目报告插件/281
1531JavaDocs/281
1532Source Xref/283
1533CheckStyle/284
1534PMD/286
1535ChangeLog/288
1536Cobertura/289
154自定义站点外观/290
1541站点描述符/290
1542头部内容及外观/291
1543皮肤/292
1544导航边栏/294
155创建自定义页面/295
156国际化/298157部署站点/299
158小结/302
第16章m2eclipse/303
161m2eclipse简介/304
162新建Maven项目/304
163导入Maven项目/306
1631导入本地Maven项目/307
1632从SCM仓库导入Maven项目/308
1633m2eclipse中Maven项目的结构/309
164执行mvn命令/310165访问Maven仓库/312
1651Maven仓库视图/312
1652搜索构件和Java类/314
166管理项目依赖/315
1661添加依赖/315
1662分析依赖/317
167其他实用功能/319
1671POM编辑的代码提示/319
1672Effective POM/320
1673下载依赖源码/321
168小结/321
第17章编写Maven插件/323
171编写Maven插件的一般步骤/324
172案例:编写一个用于代码行统计的Maven插件/324
173Mojo标注/331
174Mojo参数/332
175错误处理和日志/336
176测试Maven插件/337
177小结/341
ⅩⅦ第18章Archetype/342
181Archetype使用再叙/343
1811Maven Archetype Plugin/343
1812使用Archetype的一般步骤/343
1813批处理方式使用Archetype/344
1814常用Archetype介绍/345
182编写Archetype/347
183Archetype Catalog/352
1831什么是Archetype Catalog/352
1832Archetype Catalog的来源/353
1833生成本地仓库的Archetype Catalog/354
1834使用nexusarchetypeplugin/355
184小结/356
附录APOM元素参考/357
附录BSettings元素参考/359
附录C常用插件列表/360
返回顶部