文档章节

maven常用插件记录

JAVA_NINA
 JAVA_NINA
发布于 2016/11/07 14:24
字数 639
阅读 31
收藏 0

1.忽略单元测试失败

通常,你会开发一个带有很多失败单元测试的系统。 如果你正在实践测试驱动开发(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>

插件文档:http://maven.apache.org/plugins/maven-surefire-plugin/testmojo.html

插件参数表达式:

testFailureIgnore Set this to true to ignore a failure during testing. Its use

* Type: boolean
* Required: No
* Expression: ${maven.test.failure.ignore}

这个表达式可以从命令行通过 -D 参数设置。

$ mvn test -Dmaven.test.failure.ignore=true

2.跳过单元测试

命令行模式:

$ mvn install -Dmaven.test.skip=true
...
[INFO] [compiler:testCompile]
[INFO] Not compiling test sources
[INFO] [surefire:test]
[INFO] Tests are skipped.
...

配置方式:

<project>
[...]
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<skip>true</skip>
</configuration>
</plugin>
</plugins>
</build>
[...]
</project>

3.Maven Assembly插件是一个用来创建你应用程序特有分发包的插件

你可以使用 Maven Assembly 插件以你希望的任何形式来装配输出,只需定义一个自定义的装配描述符。

要配置 Maven Assembly 插件, 我们需要在 pom.xml 中的build 配置中添加如下的 plugin 配

配置 Maven 装配描述符

<project>
[...]
<build>
<plugins>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
</plugin>
</plugins>
</build>
[...]
</project>

添加好这些配置以后,通过运行 mvn assembly:assembly 来构建这个装配。

$ mvn install assembly:assembly

我们会得到target/simple-weather-1.0-jar-with-dependencies.jar。

jar-with-dependencies 格式创建一个包含所有 simple-weather 项目的二进制代码以
及所有依赖解压出来的二进制代码的 JAR 文件。 这个略微非常规的格式产生了一个 9
MiB 大小的 JAR 文件,包含了大概 5290 个类。 但是它确实给那些使用 Maven 开发
的应用程序提供了一个易于分发的格式。

4.Maven Jetty插件

<project>
[...]
<build>
<finalName>simple-webapp</finalName>
<plugins>
<plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>maven-jetty-plugin</artifactId>
</plugin>
</plugins>
</build>
[...]
</project>

启动jetty的命令: mvn jetty:run

5.依赖范围:provided

表示此jar文件已经由WEB容器提供,不需要打入到war包

<project>
[...]
<dependencies>
[...]
<dependency>
<groupId>org.apache.geronimo.specs</groupId>
<artifactId>geronimo-servlet_2.4_spec</artifactId>
<version>1.1.1</version>
<scope>provided</scope>
</dependency>
</dependencies>
[...]
</project>

 

© 著作权归作者所有

JAVA_NINA
粉丝 26
博文 219
码字总数 33012
作品 0
唐山
程序员
私信 提问
加载中

评论(0)

eclipse+maven开发配置

最初使用的时候遇到不少问题,记录下来方便今后使用。 第一步、配置maven M2_HOME: D:serverapache-maven-3.3.9MAVAN_HOME: D:serverapache-maven-3.3.9Path:增加: %MAVANHOME%bin;%M2HOME...

誰能煮粥
2017/07/22
0
0
Maven 常用命令集合

初学maven即感受到其强大的便捷性,大体记录下maven的基础知识以备不时之需。 常用命令为 : mvn archetype:create :创建 Maven 项目 mvn compile :编译源代码 mvn test-compile :编译测试...

小编辑
2011/01/06
1.8K
2
一些加快开发效率的idea插件

在Java开发中,idea是当之无愧的最好用的IDE,它也鼓舞了很多开发者开发了许多idea的插件,其中一些插件极大的加快了我们的开发效率。这里介绍一些用过的不错的插件。记录下来,后面再去找这...

艾贺
2017/11/28
0
0
Maven实战(八)——常用Maven插件介绍(下)

我们都知道Maven本质上是一个插件框架,它的核心并不执行任何具体的构建任务,所有这些任务都交给插件来完成,例如编译源代码是由maven- compiler-plugin完成的。进一步说,每个任务对应了一...

有事没事
2016/09/21
67
0
常用Maven插件介绍(下)

转自:http://www.infoq.com/cn/news/2011/05/xxb-maven-8-plugin 我们都知道Maven本质上是一个插件框架,它的核心并不执行任何具体的构建任务,所有这些任务都交给插件来完成,例如编译源代...

long0404
2016/06/16
0
0

没有更多内容

加载失败,请刷新页面

加载更多

一款提升IT运维工作效率的工具,你值得拥有!

IT运维的工作内容主要是负责服务器硬件配置、独立主机或虚拟化产品的开通维护、服务器日常运行监控和管理等,具体的要看企业对这个岗位的要求。 而像运维这样的岗位,我个人是推荐可以使用一...

欢乐马在开源
19分钟前
44
0
IDEA 多线程Debug

一、问题描述 在idea中的进行调试时,代码中有多线程,想对线程中的代码进行跟踪,代码如下: for (int i = 0; i < 5; i++) { final int index = i; exec...

Airship
23分钟前
19
0
jenkins 插件加速

参考:https://my.oschina.net/VASKS/blog/3106314 主要是自己创建一个nginx, 让jenkins从清华源下载。 以下是创建nginx的Dockerfile Dockerfile FROM nginxADD nginx.conf /etc/nginx/ngi......

杰仪
24分钟前
29
0
五分钟自学编程:怎样才能学好笔试面试最爱考察的算法

原创声明 本文作者:黄小斜 转载请务必在文章开头注明出处和作者。 本文思维导图 什么是算法 上回我们有一篇文章,讲述了作为一个新人程序员,如何学习数据结构这门课程,其实呢,数据结构和...

黄小斜
27分钟前
24
0
面试题 11:旋转数组的最小数字

题目描述 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 输入一个非递减排序的数组的一个旋转,输出旋转数组的最小元素。 例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋...

Oaki
33分钟前
50
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部