-
\"Maven权威指南是一本非常经典的教程,相较于ANT更为实用。\
资源介绍
Maven权威指南
Authors
Tim O'Brien (Sonatype, Inc.) , John Casey (Sonatype, Inc.) , Brian Fox (Sonatype, Inc.) , Bruce Snyder () , Jason Van Zyl (Sonatype, Inc.) , Juven Xu ()
Abstract
Maven权威指南是一本关于Apache Maven的书。
Copyright
1. Creative Commons BY-ND-NC
Foreword: Beta 0.16
Preface
1. How to Use this Book
2. Your Feedback
3. Font Conventions
4. Maven Writing Conventions
5. Acknowledgements
1. 介绍 Apache Maven
1.1. Maven... 它是什么?
1.2. 约定优于配置(Convention Over Configuration)
1.3. 一个一般的接口
1.4. 基于Maven插件的全局性重用
1.5. 一个“项目”的概念模型
1.6. Maven是Ant的另一种选择么?
1.7. 比较Maven和Ant
1.8. 总结
2. 安装和运行Maven
2.1. 验证你的Java安装
2.2. 下载Maven
2.3. 安装Maven
2.3.1. 在Mac OSX上安装Maven
2.3.2. 在Microsoft Windows上安装Maven
2.3.3. 在Linux上安装Maven
2.3.4. 在FreeBSD或OpenBSD上安装Maven
2.4. 验证Maven安装
2.5. Maven安装细节
2.5.1. 用户相关配置和仓库
2.5.2. 升级Maven
2.6. 获得Maven帮助
2.7. 使用Maven Help插件
2.7.1. 描述一个Maven插件
2.8. 关于Apache软件许可证
I. Maven实战
3. 一个简单的Maven项目
3.1. 简介
3.1.1. 下载本章的例子
3.2. 创建一个简单的项目
3.3. 构建一个简单的项目
3.4. 简单的项目对象模型 (Project Object Model)
3.5. 核心概念
3.5.1. Maven插件和目标 (Plugins and Goals)
3.5.2. Maven生命周期 (Lifecycle)
3.5.3. Maven坐标 (Coordinates)
3.5.4. Maven仓库(Repositories)
3.5.5. Maven依赖管理 (Dependency Management)
3.5.6. 站点生成和报告 (Site Generation and Reporting)
3.6. 小结
4. 定制一个Maven项目
4.1. 介绍
4.1.1. 下载本章样例
4.2. 定义Simple Weather项目
4.2.1. Yahoo! Weather RSS
4.3. 创建Simple Weather项目
4.4. 定制项目信息
4.5. 添加新的依赖
4.6. Simple Weather源码
4.7. 添加资源
4.8. 运行Simple Weather项目
4.8.1. Maven Exec 插件
4.8.2. 浏览你的项目依赖
4.9. 编写单元测试
4.10. 添加测试范围依赖
4.11. 添加单元测试资源
4.12. 执行单元测试
4.12.1. 忽略测试失败
4.12.2. 跳过单元测试
4.13. 构建一个打包好的命令行应用程序
5. 一个简单的Web应用
5.1. 介绍
5.1.1. 下载本章样例
5.2. 定义这个简单的Web应用
5.3. 创建这个简单的Web应用
5.4. 配置Jetty插件
5.5. 添加一个简单的Servlet
5.6. 添加J2EE依赖
5.7. 小结
6. 一个多模块项目
6.1. 简介
6.1.1. 下载本章样例
6.2. simple-parent 项目
6.3. simple-weather 模块
6.4. simple-webapp 模块
6.5. 构建这个多模块项目
6.6. 运行Web应用
7. 多模块企业级项目
7.1. 简介
7.1.1. 下载本章样例
7.1.2. 多模块企业级项目
7.1.3. 本例中所用的技术
7.2. simple-parent项目
7.3. simple-model模块
7.4. simple-weather模块
7.5. simple-persist模块
7.6. simple-webapp模块
7.7. 运行这个Web应用
7.8. simple-command模块
7.9. 运行这个命令行程序
7.10. 小结
7.10.1. 编写接口项目程序
8. 优化和重构POM
8.1. 简介
8.2. POM清理
8.3. 优化依赖
8.4. 优化插件
8.5. 使用Maven Dependency插件进行优化
8.6. 最终的POM
8.7. 小结
II. Maven Reference
9. 项目对象模型
9.1. 简介
9.2. POM
9.2.1. 超级POM
9.2.2. 最简单的POM
9.2.3. 有效POM
9.2.4. 真正的POM
9.3. POM语法
9.3.1. 项目版本
9.3.1.1. 版本构建号
9.3.1.2. SNAPSHOT版本
9.3.1.3. LATEST 和 RELEASE 版本
9.3.2. 属性引用
9.4. 项目依赖
9.4.1. 依赖范围
9.4.2. 可选依赖
9.4.3. 依赖版本界限
9.4.4. 传递性依赖
9.4.4.1. 传递性依赖和范围
9.4.5. 冲突解决
9.4.6. 依赖管理
9.5. 项目关系
9.5.1. 坐标详解
9.5.2. 多模块项目
9.5.3. 项目继承
9.6. POM最佳实践
9.6.1. 依赖归类
9.6.2. 多模块 vs. 继承
9.6.2.1. 简单项目
9.6.2.2. 多模块企业级项目
9.6.2.3. 原型父项目
10. 构建生命周期
10.1. 简介
10.1.1. 清理生命周期 (clean)
10.1.2. 默认生命周期 (default)
10.1.3. 站点生命周期 (site)
10.2. 打包相关生命周期
10.2.1. JAR
10.2.2. POM
10.2.3. Maven Plugin
10.2.4. EJB
10.2.5. WAR
10.2.6. EAR
10.2.7. 其它打包类型
10.3. 通用生命周期目标
10.3.1. Process Resources
10.3.2. Compile
10.3.3. Process Test Resources
10.3.4. Test Compile
10.3.5. Test
10.3.6. Install
10.3.7. Deploy
11. 构建Profile
11.1. Profile是用来做什么的?
11.1.1. 什么是构建可移植性
11.1.1.1. 不可移植构建
11.1.1.2. 环境可移植性
11.1.1.3. 组织(内部)可移植性
11.1.1.4. 广泛(全局)可移植性
11.1.2. 选择一个适当级别的可移植性
11.2. 通过Maven Profiles实现可移植性
11.2.1. 覆盖一个项目对象模型
11.3. 激活Profile
11.3.1. 激活配置
11.3.2. 通过属性缺失激活
11.4. 外部Profile
11.5. Settings Profile
11.5.1. 全局Settings Profile
11.6. 列出活动的Profile
11.7. 提示和技巧
11.7.1. 常见的环境
11.7.2. 安全保护
11.7.3. 平台分类器
11.8. 小结
12. Maven Assemblies
12.1. Introduction
12.2. Assembly Basics
12.2.1. Predefined Assembly Descriptors
12.2.2. Building an Assembly
12.2.3. Assemblies as Dependencies
12.2.4. Assembling Assemblies via Assembly Dependencies
12.3. Overview of the Assembly Descriptor
12.4. The Assembly Descriptor
12.4.1. Property References in Assembly Descriptors
12.4.2. Required Assembly Information
12.5. Controlling the Contents of an Assembly
12.5.1. Files Section
12.5.2. FileSets Section
12.5.3. Default Exclusion Patterns for fileSets
12.5.4. dependencySets Section
12.5.4.1. Customizing Dependency Output Location
12.5.4.2. Interpolation of Properties in Dependency Output Location
12.5.4.3. Including and Excluding Dependencies by Scope
12.5.4.4. Fine Tuning: Dependency Includes and Excludes
12.5.4.5. Transitive Dependencies, Project Attachments, and Project Artifacts
12.5.4.6. Advanced Unpacking Options
12.5.4.7. Summarizing Dependency Sets
12.5.5. moduleSets Sections
12.5.5.1. Module Selection
12.5.5.2. Sources Section
12.5.5.3. Interpolation of outputDirectoryMapping in moduleSets
12.5.5.4. Binaries section
12.5.5.5. moduleSets, Parent POMs and the binaries Section
12.5.6. Repositories Section
12.5.7. Managing the Assembly’s Root Directory
12.5.8. componentDescriptors and containerDescriptorHandlers
12.6. Best Practices
12.6.1. Standard, Reusable Assembly Descriptors
12.6.2. Distribution (Aggregating) Assemblies
12.7. Summary
13. 属性和资源过滤
13.1. 简介
13.2. Maven属性
13.2.1. Maven项目的属性
13.2.2. Maven的Settings属性
13.2.3. 环境变量属性
13.2.4. Java系统属性
13.2.5. 用户定义的属性
13.3. 资源过滤
14. Maven和Eclipse: m2eclipse
14.1. 简介
14.2. m2eclipse
14.3. 安装 m2eclipse 插件
14.3.1. 安装前提条件
14.3.1.1. 安装 Subclipse
14.3.1.2. 安装 Mylyn
14.3.1.3. 安装 AspectJ Tools Platform (AJDT)
14.3.1.4. 安装 Web Tools Platform (WTP)
14.3.2. 安装 m2eclipse
14.4. 开启 Maven 控制台
14.5. 创建一个 Maven 项目
14.5.1. 从 SCM 签出一个 Maven 项目
14.5.2. 用Maven Archetype创建一个Maven项目
14.5.3. 创建一个 Maven 模块
14.6. 创建一个Maven POM文件
14.7. 导入Maven项目
14.7.1. 导入一个Maven项目
14.7.2. 具体化一个Maven项目
14.8. 运行Maven构建
14.9. 使用Maven进行工作
14.9.1. 添加及更新依赖或插件
14.9.2. 创建一个Maven模块
14.9.3. 下载源码
14.9.4. 打开项目页面
14.9.5. 解析依赖
14.10. 使用Maven仓库进行工作
14.10.1. 搜索 Maven 构件和 Java 类
14.10.2. 为Maven仓库编制索引
14.11. 使用基于表单的POM编辑器
14.12. 在m2eclipse中分析项目依赖
14.13. Maven 选项
14.14. 小结
15. 站点生成
15.1. 简介
15.2. 使用Maven构建项目站点
15.3. 自定义站点描述符
15.3.1. 自定义页面顶端图片
15.3.2. 自定义导航菜单
15.4. 站点目录结构
15.5. 编写项目文档
15.5.1. APT样例
15.5.2. FML样例
15.6. 部署你的项目web站点
15.6.1. 配置服务器认证
15.6.2. 配置文件和目录模式
15.7. 自定义站点外观
15.7.1. 自定义站点CSS
15.7.2. 创建自定义的站点模板
15.7.3. 可重用的web站点皮肤
15.7.4. 创建自定义的主题CSS
15.7.5. 在皮肤中自定义站点模板
15.8. 提示与技巧
15.8.1. 给HEAD嵌入XHTML
15.8.2. 在你站点logo下添加链接
15.8.3. 为你的站点添加导航链接
15.8.4. 添加项目版本
15.8.5. 修改发布日期格式和位置
15.8.6. 使用Doxia宏
16. 仓库管理器
16.1. 简介
16.1.1. Nexus历史
16.2. 安装Nexus
16.2.1. 从Sonatype下载Nexus
16.2.2. 安装Nexus
16.2.3. 运行Nexus
16.2.4. 安装后检查单
16.2.5. 为Redhat/Fedora/CentOS设置启动脚本
16.2.6. 升级Nexus版本
16.3. 使用Nexus
16.3.1. 浏览仓库
16.3.2. 浏览组
16.3.3. 搜索构件
16.3.4. 浏览系统RSS源
16.3.5. 浏览日志文件和配置
16.3.6. 更改你的密码
16.4. 配置Maven使用Nexus
16.4.1. 使用Nexus*代理仓库
16.4.2. 使用Nexus作为快照仓库
16.4.3. 为缺少的依赖添加仓库
16.4.4. 添加一个新的仓库
16.4.5. 添加一个仓库至一个组
16.5. 配置Nexus
16.5.. 定制服务器配置
16.5.2. 管理仓库
16.5.3. 管理组
16.5.4. 管理路由
16.5.5. 网络配置
16.6. 维护仓库
16.7. 部署构件至Nexus
16.7.1. 部署发布版
16.7.2. 部署快照版
16.7.3. 部署第三方构件
17. Writing Plugins
17.1. Introduction
17.2. Programming Maven
17.2.1. What is Inversion of Control?
17.2.2. Introduction to Plexus
17.2.3. Why Plexus?
17.2.4. What is a Plugin?
17.3. Plugin Descriptor
17.3.1. Top-level Plugin Descriptor Elements
17.3.2. Mojo Configuration
17.3.3. Plugin Dependencies
17.4. Writing a Custom Plugin
17.4.1. Creating a Plugin Project
17.4.2. A Simple Java Mojo
17.4.3. Configuring a Plugin Prefix
17.4.4. Logging from a Plugin
17.4.5. Mojo Class Annotations
17.4.6. When a Mojo Fails
17.5. Mojo Parameters
17.5.1. Supplying Values for Mojo Parameters
17.5.2. Multi-valued Mojo Parameters
17.5.3. Depending on Plexus Components
17.5.4. Mojo Parameter Annotations
17.6. Plugins and the Maven Lifecycle
17.6.1. Executing a Parallel Lifecycle
17.6.2. Creating a Custom Lifecycle
17.6.3. Overriding the Default Lifecycle
18. Writing Plugins in Alternative Languages
18.1. Writing Plugins in Ant
18.2. Creating an Ant Plugin
18.3. Writing Plugins in JRuby
18.3.1. Creating a JRuby Plugin
18.3.2. Ruby Mojo Implementations
18.3.3. Logging from a Ruby Mojo
18.3.4. Raising a MojoError
18.3.5. Referencing Plexus Components from JRuby
18.4. Writing Plugins in Groovy
18.4.1. Creating a Groovy Plugin
A. Appendix: Settings Details
A.1. Quick Overview
A.2. Settings Details
A.2.1. Simple Values
A.2.2. Servers
A.2.3. Mirrors
A.2.4. Proxies
A.2.5. Profiles
A.2.6. Activation
A.2.7. Properties
A.2.8. Repositories
A.2.9. Plugin Repositories
A.2.10. Active Profiles
B. Appendix: Sun Specification Alternatives
List of Figures
3.1. 一个插件包含一些目标
3.2. 一个生命周期是一些阶段的序列
3.3. 一个目标绑定到一个阶段
3.4. 被绑定的目标随着它们阶段的运行而运行
3.5. 一个Maven项目的坐标
3.6. Maven空间是项目的一个坐标系统
3.7. Maven处理传递性依赖
7.1. 多模块企业级应用的模块关系
7.2. 天气数据的简单对象模型
7.3. Spring MVC 控制器引用simple-weather和simple-persist中的组件
7.4. 引用 simple-weather 和 simple-persist 的命令行应用
7.5. 编写接口项目程序
9.1. 项目对象模型
9.2. 超级POM永远是最基础的父POM
9.3. 多模块项目关系
9.4. a-parent和project的项目继承关系
9.5. maven-book 多模块 vs. 继承
9.6. 企业级多模块 vs. 继承
9.7. 为特定的项目使用父项目作为“原型”
12.1. Assembly Descriptor Picture
14.1. 在Eclipse中开启Maven控制台
14.2. 使用m2eclipse向导来创建一个新项目
14.3. 从Subversion签出一个新的项目
14.4. 使用Maven Archetype创建一个Maven项目
14.5. 创建一个Maven模块
14.6. 为一个新的Maven模块选择一个父项目
14.7. 创建一个新的POM
14.8. 为新的POM添加依赖
14.9. 向*仓库查询依赖
14.10. 导入一个Maven项目
14.11. 导入一个多模块的Maven项目
14.12. Materializing a Maven Project
14.13. 选择一个构件以具体化
14.14. 具体化Apache Camel
14.15. 通过Run As..运行一个Eclipse构建
14.16. 配置一个Maven构建作为一个运行配置
14.17. 可用的Maven特性
14.18. 手动给项目的POM添加一个依赖
14.19. 更新Maven依赖
14.20. 搜索依赖
14.21. 搜索构件和类
14.22. 搜索一个POM
14.23. 在仓库中搜索类
14.24. 打开Maven索引视图
14.25. Maven索引视图
14.26. 从索引视图定位一个POM
14.27. idiom-core的POM编辑器的Overview标签页
14.28. idiom父项目的POM编辑器的Overview标签页
14.29. idiom-core的有效POM
14.30. POM编辑器的Dependencies标签页
14.31. POM编辑器的Build标签页
14.32. POM编辑器的Dependency Tree标签页
14.33. 在依赖树中定位依赖
14.34. 以图的形式查看项目的依赖
14.35. 依赖图的放射状布局
14.36. Eclipse的Maven首选项
14.37. Maven目标对话框
14.38. Maven安装选项页面
14.39. 开启Maven版本装饰器
14.40. 没有Maven版本装饰器的包浏览器
14.41. 开启了Maven版本装饰器的包浏览器
15.1. 简单生成的Maven站点
15.2. 定制样例项目的web站点
16.1. Nexus登陆窗口(默认 用户名/密码 是 admin/admin123)
16.2. 匿名用户的Nexus界面
16.3. 浏览一个Nexus仓库
16.4. 浏览一个Nexus组
16.5. 关键词为"maven"的构件搜索结果
16.6. 浏览Nexus系统信息源
16.7. 浏览Nexus日志和配置文件
16.8. 更改你的Nexus密码
16.9. 添加一个Nexus仓库
16.10. 添加新的仓库至一个Nexus组
16.11. Nexus服务器配置
16.12. 代理仓库的配置页面
16.13. Nexus中的组配置页面
16.14. Nexus中的路由配置页面
List of Examples
1.1. 一个简单的 Ant build.xml 文件
1.2. 一个简单的 Maven pom.xml
3.1. Simple 项目的 pom.xml 文件
4.1. simple-wheather 项目的初始 POM
4.2. 为 pom.xml 添加组织,法律和开发人员信息
4.3. 添加 Dom4J, Jaxen, Velocity 和 Log4J 作为依赖
4.4. Simple Weather 的 Weather 模型对象
4.5. Simple Weather 的 Main 类
4.6. Simple Weather 的 YahooRetriever 类
4.7. Simple Weather 的 YahooParser 类
4.8. Simple Weather 的 WeatherFormatter 类
4.9. Simple Weather 的 Log4J 配置文件
4.10. Simple Weather 的 Output Velocity 模板
4.11. Simple Weather 的 YahooParserTest 单元测试
4.12. Simple Weather 的 WeatherFormatterTest 单元测试
4.13. 添加一个测试范围依赖
4.14. Simple Weather 的 WeatherFormatterTest 期望输出
4.15. Simple Weather 的 YahooParserTest XML 输入
4.16. 忽略单元测试失败
4.17. 插件参数表达式
4.18. 跳过单元测试
4.19. 配置 Maven 装配描述符
5.1. simple-web 项目的初始 POM
5.2. 配置 Jetty 插件
5.3. src/main/webapp/index.jsp 的内容
5.4. src/main/webapp/WEB-INF/web.xml 的内容
5.5. SimpleServlet 类
5.6. 匹配 Simple Servlet
5.7. 添加 Servlet 2.4 规格说明作为依赖
5.8. 添加 JSP 2.0 规格说明作为依赖
6.1. simple-parent 项目的 POM
6.2. simple-weather 模块的 POM
6.3. WeatherService 类
6.4. simple-webapp 模块的 POM
6.5. simple-webapp 的 WeatherServlet
6.6. simple-webapp 的 web.xml
7.1. simple-parent 项目的 POM
7.2. simple-model 的 pom.xml
7.3. 标注的Weather模型对象
7.4. simple-model 的 Condition 模型对象
7.5. simple-weather 模块的 POM
7.6. WeatherService 类
7.7. simple-weather模块的Spring Application Context
7.8. simple-persist 的 POM
7.9. simple-persist'的WeatherDAO类
7.10. simple-persist 的 Spring Application Context
7.11. simple-persist 的 hibernate.cfg.xml
7.12. simple-webapp的POM
7.13. simple-webapp WeatherController
7.14. 由 WeatherController 呈现的 weather.vm 模板
7.15. simple-web 的 HistoryController
7.16. 由 HistoryController 呈现的 history.vm
7.17. weather-servlet.xml 中的 Spring 控制器配置
7.18. simple-webapp 的 web.xml
7.19. simple-command 的 POM
7.20. simple-command 的 Main 类
7.21. WeatherFormatter 使用 Velocity 模板呈现天气数据
7.22. weather.vm Velocity 模板
7.23. history.vm Velocity 模板
8.1. simple-parent 的最终 POM
8.2. simple-command 的最终 POM
8.3. simple-model 的最终 POM
8.4. simple-persist 的最终 POM
8.5. simple-weather 的最终 POM
8.6. simple-webapp 的最终 POM
9.1. 超级POM
9.2. 最简单的POM
9.3. 项目依赖
9.4. 声明可选依赖
9.5. 指定一个依赖界限:JUnit 3.8 - JUnit 4.0
9.6. 指定一个依赖界限:JUnit <= 3.8.1
9.7. 排除一个传递性依赖
9.8. 排除并替换一个传递性依赖
9.9. 在一个顶层POM中定义依赖版本
9.10. top-group的modules元素
9.11. sub-group的modules元素
9.12. 项目继承
9.13. 在一个单独的POM项目中巩固依赖
9.14. 声明一个对于POM的依赖
10.1. 在pre-clean阶段触发一个目标
10.2. 自定义Clean插件的行为
10.3. 为Adobe Flex (SWF)定制打包类型
10.4. 在项目资源中使用属性
10.5. src/main/filters中的default.properties
10.6. 过滤资源 (替换属性)
10.7. 配置额外的资源目录
10.8. 过滤脚本资源
10.9. 为Compiler插件设置source和target版本
10.10. 覆盖默认的源码和输出目录
10.11. 覆盖测试源码和输出的位置
10.12. 配置Surefire忽略单元测试失败
11.1. 使用一个Maven Profile覆盖Compiler插件设置
11.2. Profile中允许出现的元素
11.3. 使用Profile激活动态包含子模块
11.4. Profile激活参数:JDK版本,操作系统参数,以及属性
11.5. 在属性缺失的情况下激活Profile
11.6. 将profile放到一个profiles.xml文件中
11.7. 定义用户特定的Setting Profile (~/.m2/settings.xml)
11.8. 定义激活的Settings Profile
11.9. ~/.m2/settings.xml 中定义一个设置了environment.type的默认profile,
11.10. 项目profile,当environment.type等于'dev'时被激活
11.11. 在用户特定Settings Profile中存储秘密信息
11.12. 使用由平台激活的Profile修饰构件
11.13. 使用由平台激活的Profile和变量替换修饰构件
11.14. 依赖于一个已修饰的构件
12.1. Assembly Descriptor for Executable JAR
12.2. Configuring the project assembly in top-level POM
12.3. Activating the Assembly Plugin Configuration in Child Projects
12.4. POM for the Assembly Bundling Project
12.5. Required Assembly Descriptor Elements
12.6. Including a JAR file in an Assembly using files
12.7. Including Files with fileSet
12.8. Definition of Default Exclusion Patterns from Plexus Utils
12.9. Defining Dependency Sets Using Scope
12.10. Using Dependency Excludes and Includes in dependencySets
12.11. Excluding Files from a Dependency Unpack
12.12. Includes and Excluding Modules with a moduleSet
12.13. Including JavaDoc from Modules in an Assembly
12.14. Including Module Artifacts and Dependencies in an Assembly
13.1. POM中的用户定义属性
13.2. POM的Profile中的用户定义属性
13.3. 在资源中引用Maven属性
13.4. 定义变量和激活资源过滤
15.1. 一个初始的站点描述符
15.2. 给站点描述符添加Banner Left和Banner Right
15.3. 在站点描述符中创建菜单项
15.4. 站点菜单添加链接
15.5. APT文档
15.6. FAQ标记语言文档
15.7. 配置站点部署
15.8. 在用户特定Settings中存储服务器认证信息
15.9. 在远程服务器上配置文件和目录模式
15.10. 在一个项目的POM中自定义页面模板
15.11. 给站点描述符添加一个菜单项
15.12. 在站点描述符中配置自定义站点皮肤
15.13. 给HEAD元素嵌入HTML
15.14. 在你的站点Logo下添加链接
15.15. 配置站点导航链接
15.16. 放置版本信息
15.17. 放置发布日期
15.18. 配置发布日期格式
15.19. XHTML中Snippet宏的输出
16.1. 为Nexus配置Maven Settings (~/.m2/settings.xml)
16.2. 配置Maven使其为发布版和快照版使用Nexus
16.3. ${NEXUS_HOME}/conf/plexus.properties的内容
16.4. 为部署配置发布版本仓库
16.5. 为部署配置快照版本仓库
16.6. Oracle JDBC JAR 依赖
17.1. Plugin Descriptor
17.2. A Plugin Project's POM
17.3. A Simple EchoMojo
17.4. Maven Metadata for the Maven Plugin Group
17.5. Customizing the Plugin Groups in Maven Settings
17.6. Configuring a Plugin Prefix
17.7. A Plugin with Multi-valued Parameters
17.8. Depending on a Plexus Component
17.9. Define a Custom Lifecycle in lifecycle.xml
17.10. Forking a Customer Lifecycle from a Mojo
17.11. Overriding the Default Lifecycle
17.12. Configuring a Plugin as an Extension
18.1. POM for an Ant Maven Plugin
18.2. Echo Ant Mojo
18.3. Echo Ant Mojo Descriptor
18.4. POM for a JRuby Maven Plugin
18.5. The Echo Ruby Mojo
18.6. Referencing a Maven Project from a Ruby Mojo
18.7. Raising a MojoError from a Ruby Mojo
18.8. Depending on a Plexus Component from a Ruby Mojo
18.9. POM for a Groovy Maven Plugin
18.10.
A.1. Overview of top-level elements in settings.xml
A.2. Simple top-level elements in settings.xml
A.3. Server configuration in settings.xml
A.4. Mirror configuration in settings.xml
A.5. Proxy configuration in settings.xml
A.6. Defining Activation Parameters in settings.xml
A.7. Setting the ${user.install} property in settings.xml
A.8. Repository Configuration in settings.xml
A.9. Setting active profiles in settings.xml
B.1. Adding JTA 1.0.1B to a Maven Project
- 上一篇: VisualSvn2017破解版
- 下一篇: VisualSVN客户端