搞了3天,终于搞定了maven + hudson + p4的集成配置。
下面一一介绍下各个工具的使用。
Maven:
C:\Users\tobrien
> set M2_HOME=c:\Program Files\maven-2.0.9
C:\Users\tobrien
> set PATH=%PATH%;%M2_HOME%\bin
Standard Location
Description
pom.xml |
Maven’s POM, which is always at the top-level of a project. |
LICENSE.txt |
A license file is encouraged for easy identification by users and is optional. |
README.txt |
A simple note which might help first time users and is optional. |
target/ |
Directory for all generated output. This would include
compiled classes, generated sources that may be compiled, the generated
site or anything else that might be generated as part of your build. |
target/generated-sources/plugin-id
<plugin-id>
<plugin-id>
<plugin-id></plugin-id>
</plugin-id>
</plugin-id>
|
Standard location for generated sources. For example, you may generate some sources from a JavaCC grammar. |
src/main/java/ |
Standard location for application sources. |
src/main/resources/ |
Standard location for application resources. |
src/main/filters/ |
Standard location for resource filters. |
src/main/assembly/ |
Standard location for assembly filters. |
src/main/config/ |
Standard location for application configuration filters. |
src/test/java/ |
Standard location for test sources. |
src/test/resources/ |
Standard location for test resources. |
src/test/filters/ |
Standard location for test resource filters. |
groupId
groupId:
团体,公司,小组,组织,项目,或者其它团体。团体标识的约定是,它以创
建这个项目的组织名称的逆向域名
(reverse
domain name)
开头。来自
Sonatype
的项目有一个以
com.sonatype
开头的
groupId
,而
Apache
Software
的项目有以
org.apache
开头的
groupId
。
ArtifactId:
在
groupId
下的表示一个单独项目的唯一标识符。
Version:
一个项目的特定版本。发布的项目有一个固定的版本标识来指向该项目的某一个
特定的版本。而正在开发中的项目可以用一个特殊的标识,这种标识给版本加上
一个“
SNAPSHOT”
的标记。
项目的打包格式也是
Maven
坐标的重要组成部分,但是它不是项目唯一标识符的一个部
分。一个项目的
groupId:artifactId:version
使之成为一个独一无二的项目;你不能同
时有一个拥有同样的
groupId
,
artifactId
和
version
标识的项目。
packaging
项目的类型,默认是
jar
,描述了项目打包后的输出。类型为
jar
的项目产生一个
JAR
文件,类型为
war
的项目产生一个
web
应用。
Maven
也提供了不同的依赖范围
(dependency
scope)
。
Simple
项目的
pom.xml
包含了
一个依赖——
junit:junit:jar:3.8.1
——
范围是
test
。当一个依赖的范围是
test
的
时候,说明它在
Compiler
插件运行
compile
目标的时候是不可用的。它只有在运
行
compiler:testCompile
和
surefire:test
目标的时候才会被加入到
classpath
中。
当用
Maven
来创建
WAR
或者
EAR
,你可以配置
Maven
让它在生成的构件中捆绑依赖,
你也可以配置
Maven
,使用
provided
范围,让它排除
WAR
文件中特定的依赖。
provided
范
围告诉
Maven
一个依赖在编译的时候需要,但是它不应该被捆绑在构建的输出中。当你
开发
web
应用的时候
provided
范围变得十分有用,你需要通过
Servlet
API
来编译你的代
码,但是你不希望
Servlet
API
的
JAR
文件包含在你
web
应用的
WEB-INF/lib
目录中。
Maven
运行命令
:
mvn
archetype:create -DgroupId=org.victor.mvn \
-DartifactId=simple-webapp
-DpackageName=org.victor.mvn -DarchetypeArtifactId=maven
mvn
exec:java -Dexec.mainClass=org.sonatype.mavenbook.MyApp
mvn
compile
mvn
test
mvn
install (mvn clean install)
mvn
package
mvn
assembly:assembly
忽略测试失败
通常,你会开发一个带有很多失败单元测试的系统。
如果你正在实践测试驱动开发
(TDD)
,你可能会使用测试失败来衡量你离项目完成有多远。
如果你有失败的单元
测试,但你仍然希望产生构建输出,你就必须告诉
Maven
让它忽略测试失败。
当
Maven
遇到一个测试失败,它默认的行为是停止当前的构建。
如果你希望继续构
建项目,即使
Surefire
插件遇到了失败的单元测试,你就需要设置
Surefire
的
testFailureIgnore
这个配置属性为
true
。
<project
>
[...]
<build
>
<plugins
>
<plugin
>
<groupId
>org.apache.maven.plugins</groupId
>
<artifactId
>maven-surefire-plugin</artifactId
>
<configuration
>
<testFailureIgnore
>true</testFailureIgnore
>
</configuration
>
</plugin
>
</plugins
>
</build
>
[...]
</project
>
跳过单元测试
<project
>
[...]
<build
>
<plugins
>
<plugin
>
<groupId
>org.apache.maven.plugins</groupId
>
<artifactId
>maven-surefire-plugin</artifactId
>
<configuration
>
<skip
>true</skip
>
</configuration
>
</plugin
>
</plugins
>
</build
>
[...]
</project
>
- 大小: 27.6 KB
- 大小: 30.6 KB
分享到:
相关推荐
maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装...
apache-maven-3.0.5 apache-maven-3.1.1 apache-maven-3.2.5 apache-maven-3.3.9 apache-maven-3.5.4 apache-maven-3.6.3 apache-maven-3.8.5 每个版本包含4个文件: apache-maven-3.8.5-bin.tar.gz apache-maven-...
Maven3.9.4版本压缩包,仅供学习参考,更新版本请前往Maven官方下载;Maven3.9.4版本压缩包,仅供学习参考,更新版本请前往Maven官方下载;Maven3.9.4版本压缩包,仅供学习参考,更新版本请前往Maven官方下载;Maven...
Maven最新版是款项目管理和构建自动化工具。Maven包含了一个项目对象模型 (Project Object Model),一组标准集合,一个项目生命周期(Project Lifecycle),一个依赖管理系统(Dependency Management System)。 安装...
Maven项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的项目管理工具软件。 Maven 除了以程序构建能力为特色之外,还提供高级项目管理工具。由于 Maven 的缺省构建规则有较高的可重用性,...
apache-maven-3.8.6-bin.zip apache-maven-3.8.6-bin.zip apache-maven-3.8.6-bin.zip apache-maven-3.8.6-bin.zip apache-maven-3.8.6-bin.zip apache-maven-3.8.6-bin.zip apache-maven-3.8.6-bin.zip apache-...
maven
Maven框架,本地jar资源仓,中央仓下载jar资源 有时在你的构建过程中,需要将第三方jar包添加到本地仓库中,因为它并存在于像Maven中央仓库或其它的公共仓库中。为了让Maven能够正确获取到jar包,第三方jar包必须...
Maven 除了以程序构建能力为特色之外,还提供高级项目管理工具。由于 Maven 的缺省构建规则有较高的可重用性,所以常常用两三行 Maven 构建脚本就可以构建简单的项目。由于 Maven 的面向项目的方法,许多 Apache ...
maven
4、在links中新建maven.txt文件,内容为插件地址,例如:path=D:\eclipse_gzds\myplugins\maven(注意这里斜杠,不是反斜杠) 5、将maven.txt扩展名改为maven.lin 6、在eclipse根目录下找到eclipse.ini并打开,在...
apache-maven-3.8.6-bin.tar.tz--test apache-maven-3.8.6-bin.tar.tz--test apache-maven-3.8.6-bin.tar.tz--test apache-maven-3.8.6-bin.tar.tz--test apache-maven-3.8.6-bin.tar.tz--test apache-maven-3.8.6-...
maven-3.5.0版本的本地资源包,直接解压就可使用。 方式1 需要在系统环境变量中直接配置path中配置,路径是到bin目录。 方式2 新建配置(MAVEN_HOME),路径为是解压后的maven根目录,再在path中引用(%MAVEN_HOME%\...
Maven是一种构建工具,一种项目管理工具,一种用来运行构建任务的抽象容器。对于那些成熟的,希望用一致的方式来管理和构建大量相互依赖的模块和类库,并且使用了 数千第三方组件的项目来说,Maven已经证明了它是一...
Maven是基于项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具。 Maven 除了以程序构建能力为特色之外,还提供高级项目管理工具。由于 Maven 的缺省构建规则有较高的可重用...
maven本地仓库的默认位置:无论是Windows还是Linux,在用户的目录下都有一个.m2/repository/的仓库目录,这就是Maven仓库的默认位置,变更maven默认的本地仓库的位置可更改存在于maven的settings.xml文件中local...
直接离线安装eclipse中的maven插件,在你的eclipse安装根目录下创建两个文件夹:links,myplugins(文件夹名字可以自定义),所在路径D:\eclipse。将下载下来的maven插件放到myplugins下。载links目录下创建一个...
Maven项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的项目管理工具软件。 Maven 除了以程序构建能力为特色之外,还提供高级项目管理工具。由于 Maven 的缺省构建规则有较高的可重用性,...
apache maven 3.x.x所有Linux, Windows版本下载的百度网盘链接。 apache-maven-3.0.4-bin.tar.gz apache-maven-3.0.4-bin.zip apache-maven-3.0.5-bin.tar.gz apache-maven-3.0.5-bin.zip apache-maven-3.1.0-bin....
一、Idea关联的maven本地仓库配置文件settings.xml (1)必须使用默认文件名 D:\developsoft\javaweb\commonPlugins\maven\apache-maven-3.8.1_first\conf\settings.xml 二、Myeclipse关联的maven本地仓库配置文件...