项目站点
摘要:Maven3用户必须使用3.x版本的maven-site-plugin Maven2用户应该使用maven-site-plugin最新的2.x版本 运行mvn site即可直接生成一个最简单的站点。在target/site目录下可以找到Maven生成的站点文件 若想在本地查看结构正确的站点,可以用m
阅读全文
Maven属性、profile和资源过滤
摘要:Maven的六类属性 内置属性 主要有两个常用内置属性:${basedir}项目的根目录(包含pom.xml文件的目录),${version}项目版本 POM属性 用户可以使用该属性引用POM文件中对应元素的值,常用的POM属性包括: ${project.build.sourceDirectory}
阅读全文
版本管理
摘要:版本管理是指项目整体版本的演变过程管理,如从1.0-SNAPSHOT到1.0再到1.1-SNAPSHOT。 版本控制是指借助版本控制工具追踪代码的每一个变更。 快照版本变更发布版本应满足几个条件: 所有自动化测试应当全部通过;项目没有配置任何快照版本的依赖;项目没有配置任何快照版本的插件;项目所包含
阅读全文
使用Cargo实现自动化部署
摘要:Cargo是一组帮助用户操作Web容器的工具,它能帮助用户实现自动化部署,而且它几乎支持所有的Web容器,如Tomcat、JBoss、Jetty和Glassfish。Cargo通过cargo-maven2-plugin提供了Maven集成,Maven用户可以使用该插件将Web项目部署到Web容器中。
阅读全文
使用Hudson进行持续集成
摘要:持续集成就是快速且高频率地自动构建项目的所有源码,并为项目成员提供丰富的反馈信息。 一次完整的集成往往会包括以下6个步骤: 持续编译:所有正式的源代码都应该提交到源码控制系统中,持续集成服务器按一定频率检查源码控制系统,如有新的代码,就出发一次集成,旧的已编译的字节码应当全部清除,然后服务器编译所有
阅读全文
Maven Test
摘要:Failures表示要测试的结果与预期值不一致;Errors表示测试代码或产品代码发生了未预期的错误;Skipped表示那些被标记为忽略的测试方法。在Junit中用户可以使用@Ignore注解标记忽略测试方法。 Maven本身不是一个单元测试框架。Maven所做的只是在构建执行到特定生命周期阶段的时
阅读全文
Nexus
摘要:Nexus开源版本的一些特性 较小的内存占用,最小仅为28MB 基于ExtJS的友好界面 基于Restlet的完全REST API 支持代理仓库、宿主仓库和仓库组 基于文件系统,不需要数据库 支持仓库索引和搜索 支持从界面上传Maven构件 细粒度的安全控制 Bundle方式安装Nexus Nexu
阅读全文
Settings
摘要:任何一个构件都有唯一的坐标,根据这个坐标可以定义其在仓库中的唯一存储路径,这是Maven的仓库布局方式。 groupId/artifactId/version/artifactId-version(-classifier).packaging 对于Maven来说。仓库只分为两类:本地仓库和远程仓库。
阅读全文
POM
摘要:代码的第一行是xml头,指定了该xml文档的版本和编码方式 project是所有pom.xml的根元素,还声明了一些POM相关的命名空间及xsd元素。 modelVersion指定了当前POM模型的版本。对于Maven2和Maven3来说,他只能是4.0.0 groupId,artifactId和v
阅读全文
Maven指令
摘要:mvn clean compile //clean告诉Maven清理输出目录target/,compile告诉Maven编译项目主代码。 mvn clean test //清理输出目录target/,然后执行测试 mvn clean package //清理输出目录target/,然后进行打包 mv
阅读全文
Maven生命周期
摘要:Maven的生命周期抽象了构建的各个步骤,定义了他们的次序,但没有提供实现。Maven设计了插件机制。每个构建步骤都可以绑定一个或多个插件行为,而且Maven为大多数构建步骤编写并绑定了默认插件。 Maven的生命周期与插件相互绑定,用以完成实际的构建任务。具体而言,是生命周期的阶段与插件目标相互绑
阅读全文
Modules
摘要:simple-parent在pom.xml中列出了项目的子模块,这些模块在modules元素中定义,每个module元素对应了一个simple-parent目录下的子目录。Maven会在这些子目录寻找pom.xml并在构建时,将这些子目录包含到要构建的项目中。build配置和dependencies
阅读全文
Simple Maven Project
摘要:为pom.xml添加组织,法律和开发人员信息 mvn dependency:resolve 打印出项目的依赖列表 mvn dependency:tree 打印整个项目的依赖树 mvn install -X 调试运行标记 测试范围依赖是一个只在测试编译和测试运行在classpath中的有效依赖。如果项
阅读全文
Maven概述
摘要:Apache Maven的定义:Maven是一个项目管理工具,它包含了一个项目对象模型(Project Object Model,pom),一组标准集合,一个项目生命周期(Project Lifecycle),一个依赖管理系统(Dependency Management System),和用来运行在
阅读全文