Maven 权威指南

所需积分/C币:9 2013-02-28 16:26:42 6.73MB PDF
0
收藏 收藏
举报

Maven是一种构建工具,一种项目管理工具,一种用来运行构建任务的抽象容器。对于 那些成熟的,希望用一致的方式来管理和构建大量相互依赖的模块和类库,并且使用了 数千第三方组件的项目来说,Maven已经证明了它是一个不可缺少的工具。它帮助数百 万的工程师从日常工作中减轻维护第三方依赖的负担,它帮助很多组织从构建管理的泥 潭中挣脱出来,步入新的台阶,构建和维护软件所需要的工作不再是限制软件设计的因 素。 本书首次尝试来全面解释Maven这一主题。它结合了所有之前Maven书籍作者的经验和工 作,并且这还不是最终的结果,目前只是第一个版本而已,以后还会有更多的更新。虽 然Maven已经出现有很多年了
Maven权威指南 3.4.简单的项目对象模型( Project0 bject Mode1) 3 核心概念 24 3.5.1. Maven插件和目标( Plugins and goals) 3.5.2. Maven生命周期( Lifecycle) 26 3.5.3. Maven坐标( Coordinates) 9 3.5.4. Maven仓库( Repositories) 34 3.5.5. Maven依赖管理( Dependency management) 3.5.6.站点生成和报告( Site generation and reporting). 38 3.6.小结 38 4.定制一个 Maven项目 4.1.介绍 4.1.1.下载本章样例 39 4.2.定义 Simple Weather项目 39 4.2.1 Yahoo Weather rss 39 4.3.创建 Simple Weather项目 40 4.4.定制项目信息 41 4.5.添加新的依赖.. 43 4.6. Simple Weather源码 45 4.7.添加资源. 51 4.8.运行 Simple Weather项目 52 4.8.1. Maven exec插件 53 4.8.2.浏览你的项目依赖 53 4.9.编写单元测试 55 4.10.添加测试范围依赖 58 4.11.添加单元测试资源 58 4.12.执行单元测试 61 4.12.1.忽略测试失败 ,,,,,,,,,,,62 4.12.2.跳过单元测试 63 4.13.构建一个打包好的命令行应用程序 63 一个简单的Web应用 5.1.介绍 5.1.1.下载本章样例 定义这个简单的Web应用 5.3.创建这个简单的Web应用 66 5.4.配置 Jetty插件 68 5.5.添加一个简单的 Servlet ·· 70 5.6.添加J2EE依赖 72 5.7.小结 74 一个多模块项目 75 6.1.简介 75 Maven权威指南 6.1.1.下载本章样例 6.2. simple- parent项日 ...,75 6.3. simplc- weather模块 6.4. simplc- webapps模块 80 6.5.构建这个多模块项目 82 6.6.运行Web应用 84 7.多模块企业级项目 7.1.简介 85 7.1.1.下载木章样例 85 7.1.2.多模块企业级项目 85 7.1.3.本例中所用的技术 87 2. simple- parent项目 88 mple- model模块 90 7.4. simple- weather模块 94 7.5. simple- persist模块 99 7.6. simple- weapυ模块 108 7.7.运行这个Web应用 118 7.8. simple- command模块 120 7.9.运行这个命令行程序. 126 7.10.小结 129 7.10.1.编写接口项目程序 129 8.优化和重构POM ,,,,,,,,,,,,,,,131 8.1.简介 131 8.2.POM清理 131 8.3.优化依赖... ··着 · 132 8.4.优化插件 136 8.5.使用 Maven Dependency插件进行优化 137 8.6.最终的POM 140 8.7.小结 ·春·非着 150 II. Maven参考 151 9.项目对象模型 152 9.1.简介 152 9. 2. POM 152 9.2.1.超级P 154 9.2.2.最简单的POM 9.2.3.有效POM. 157 9.2.4.真正的POM 157 9.3.POM语法 9.3.1.项目版本 158 9.3.2.属性引用 160 Maven权威指南 9.4.项目依赖.. 161 9.4.1.依赖范围 ,,,,,,,,,,,,,,,,,,,,,,,,162 9.4.2.可选依赖 163 9.4.3.依赖版本界限 165 9.4.4.传递性依赖 166 9.4.5.冲突解决 167 9.4.6.依赖管理 16 9.5.项目关系 171 9.5.1.坐标详解 171 9.5.2.多模块项目 .,172 9.5.3.项目继承 174 9.6.POM最佳实践 176 9.6.1.依赖归类 176 9.6.2.多模块ⅴs.继承 178 10.构建生命周期 184 10.1.简介 184 10.1.1.清理生命周期( clean) .184 10.1.2.默认生命周期( default), 188 10.1.3.站点生命周期(site) ,,,,,,,,,,,,190 10.2.打包相关生命周期 190 10.2.1.JAR 190 2. POM 191 10. 2.3. Maven Plugin 191 10.2.4.EJB ..,192 10.2.5.WAR ,,,,193 193 10.2.7.其它打包类型 ·· 94 10.3.通用生命周期目标∴. 195 10.3.1. Process resources ,,,,,,,,195 compile 199 10. 3.3. Process Test resources ·非 200 10.3. 4. Test Compile 200 10.3.5.Test 201 10.3.6. Insta11 202 10.3. 7. Deploy .202 构建 Profi 203 1.1. Profile是用来做什么的 203 11.1.1.什么是构建可移植性. 203 11.1.2.选择一个适当级别的可移楂性 ·..······ 204 11.2.通过 Maven profiles实现可移植性. Maven权威指南 11.2.1.覆盖一个项目对象模型 207 11.3.激活 Profile.. 208 11.3.1.激活配置. 210 11.3.2.通过属性缺失激活 21 11.4.外部 Profile settings 11.5.1.全局 Settings profile 1.6.列出活动的 Profile 215 7.提示和技巧 216 I1.7.1.常见的环境 11.7.2.安全保护 218 11.7.3.平台分类器 219 小结 222 12. Maven套件 223 12.1.简介 12.2. Assemblv基础 223 12.2.1.预定义的套件描述符 224 构建一个套件 Building an Assembly. 225 12.2.3.套件作为依赖 ,,,,227 12.2.4.通过套件依赖组装套件 …….228 12.3.套件描述符概述 32 12.4.套件描述符 34 12.4.1.套件描述符中的属性引用 234 12.4.2.必须的套件信息 34 12.5.控制一个套件的内容 素 236 12.5.2. 元素 .237 12.5.4. 元素 241 元素 250 12.5.6. Repositories元素 256 12.5.7.管理套件的根目录 256 12.5.8 和 257 12.6.最佳实践 258 12.6.1.标准的,可重用的套件描述符 258 12.6.2.分发(聚合)套件 61 2.7.总结 265 13.属性和资源过滤 266 13.1.简介 266 13.2. Maven属性 266 Maven权威指南 13.2.1. Maven项目的属性 267 13.2.2. Maven的 Settings属性 268 13.2.3.环境变量属性 13.2.4.Java系统属性 269 13.2.5.用户定义的属性 271 13.3.资源过滤 14. Maven FHEclipse: m2eclipse 14.1.简介 276 14.2. m2eclipse 4.3.女装m2 eclipse插件 277 安装前提条件 277 14.3.2.安装m2 eclipse 279 14.4.开启 Maven控制台 .279 14.5.创建一个 Maven项目 14.5.1.从SCM签出一个 Maven项目 281 14.5.2.用 Maven Archetype创建一个 Maven项目 283 14.5.3.创建一个 Maven模块 285 14.6.创建一个 Maven pom文件 287 14.7.导入 Maven项目. 14.7.1.导入一个 Maven项目 14.7.2.具体化一个 Maven项目 14.8.运行 Maven构建. 14.9.使用 Maven进行工作. 298 14.9.1.添加及更新依赖或插件 ,,..300 14.9.2.创建一个 Maven模块. 301 14.9.3.下载漂码 302 14.9.4.打廾项目页面 302 14.9.5.解析依赖 ·······非 14.10.使用 Maven仓库进行工作 302 14.10.1.搜索 Mayen构件和Java类 ·曹 303 14.10.2.为 Maven仓库编制索引... 14.11.使用基于表单的POM编辑器 14.12.在m2 eclipse屮分析项目依赖 317 14.13. Maven选项 322 14.14.小结 327 15.站点生成 15.1.简介 15.2.使用 Maven构建项目站点 15.3.自定义站点描述符 ,,,,,,,,,331 15.3.1.白定义页面顶端图片 332 Maven权威指南 15.3.2.自定义导航菜单 15.4.站点日录结构 334 15.5.编写项目文档 15.5.1.APT样例 336 15.5.2.FM样例 336 15.6.部署你的项目web站点 337 15.6.1.配置服务器认证 15.6.2.配置文件和目录模式 15.7.自定义站点外观 15.7.1.自定义站点CSS 15.7.2.创建自定义的站点模板 340 15.7.3.可重用的web站点皮肤 345 15.7.4.创建自定义的主题CSS 346 15.7.5.在皮肤中自定义站点模板 347 15.8.提示与技巧 348 15.8.1.给HAD入 XHTML 348 8.2.在你站点logo下添加链接 349 15.8.3.为你的站点添加导航链接 349 8.4.添加项目版本 15.8.5.修改发布日期格式和位置 351 15.8.6.使用 Doxias宏 352 16.仓库管理器 ,,,,,,,354 6.1.简介 354 16.1.1. Nexus历史 ,,,,354 16.2.安装 Nexus 355 6.2.1.从 Sonatypc下载 Nexus 16.2.2.安装 Nexus 355 16.2.3.运行 Nexus 355 16.2.4.安装后检查单 357 16.2.5.为 Redhat/ Fedora/ Centos设置启动脚木 6.2.6.升级 Nexus版木 360 6.3.使用 Nexus 36l 16.3.1.浏览仓库 362 16.3.2.浏览组 364 16.3.3.搜索构件 16.3.4.浏览系统RSS源 367 6.3.5.浏览日志文件和配置 369 16.3.6.更改你的密码 370 16.4.配置 Maver使用 Nexus 371 16.4.1.使用 Nexus中央代理仓库 371 V111 Maven权威指南 16.4.2.使用 Nexus作为快照仓厍 372 16.4.3.为缺少的依赖添加仓库 374 16.4.4.添加一个新的仓库 16.4.5.添加一个仓库至一个组 377 16.5.酤置 Nexus 16.5..定制服务器配置 16.5.2.管理仓库 81 6.5.3.管理组 16.5.4.管理路由 16.5.5.网络配置 391 16.6.维护仓库 391 16.7.部署构件至Neⅹus 392 7.1.部署发布版 16.7.2.部署快照版 ..394 16.7.3.部署第三方构件 ....395 17.编写插件 397 17.1.简介 397 17.2. Maven编程 397 17.2.1.什么是反转控制? 397 17.2.2. Plexus简介 17.2.3.为什么使用 Plexus? 17.2.4.什么是插件? 17.3.插件描述符 400 17.3.1.顶层插件描述符元素 402 17.3.2.Mojo配置 ,,,,,,402 17.3.3.插件依赖 405 17.4.编写自定义插件 405 17.4.1.创建一个插件项目 鲁鲁垂中·非 17.4.2.一个简单的 Java mojo 17.4.3.配置插件前缀 17.4.4.插件中的日志 垂 4 17.4.5.Ⅶojo类注解 412 17.4.6.当MojO失败的时候 414 17.5.MoJ0参数 415 17.5.1.为MojO参数提供值 ··· 5 17.5.2.多值的Mojo参数 17.5.3.依赖于一个 Plexus组件 419 17.5.4.MojO参数注解 419 17.6.插件和 Maven生命周期 420 17.6.1.执行平行的生命周期 421 Maven权威指南 17.6.2.创建自定义的生命周期.. 421 17.6.3.覆盖默认生命周期 18.使用可选语言编写插件 425 18.1.使用Ant编写插件 425 18.2.创建一个Ant插件 425 18.3.使用 JRuby编写插件 18.3.1.创建一个 JRuby插件 18.3.2. Ruby mo jo实现 431 8.3.3. Ruby mo jo中使用日志 ,,434 18.3.4. Raise一个Mo」 joError 434 18.3.5.在 JRuby屮引用 Plexus组件 435 18.4.使用 Groovy编写插件 18.4.1.创建一个 Groovy插件 A.附录: Settings细节 ......439 A.1.简介. 439 A.2. Settings细节. 439 A.2.1.简单值 A.2.2.服务器( Servers) A.2.3.镜像( Mirrors) ,442 A.2.4.代理( Proxies) ,,443 A. 2.5. Profiles 444 A.2.6.激活( Activation) 444 A.2.7.属性( Properties) 6 A.2.8.仓库( Repositories) 7 A.2.9.插件仓库. 449 A.2.10.激活的 Profile 449 B.附录:Sun规格说明可选实现 450

...展开详情
试读 127P Maven 权威指南
立即下载 低至0.43元/次 身份认证VIP会员低至7折
抢沙发
一个资源只可评论一次,评论内容不能少于5个字
上传资源赚积分or赚钱
    最新推荐
    Maven 权威指南 9积分/C币 立即下载
    1/127
    Maven 权威指南第1页
    Maven 权威指南第2页
    Maven 权威指南第3页
    Maven 权威指南第4页
    Maven 权威指南第5页
    Maven 权威指南第6页
    Maven 权威指南第7页
    Maven 权威指南第8页
    Maven 权威指南第9页
    Maven 权威指南第10页
    Maven 权威指南第11页
    Maven 权威指南第12页
    Maven 权威指南第13页
    Maven 权威指南第14页
    Maven 权威指南第15页
    Maven 权威指南第16页
    Maven 权威指南第17页
    Maven 权威指南第18页
    Maven 权威指南第19页
    Maven 权威指南第20页

    试读结束, 可继续阅读

    9积分/C币 立即下载 >