maven经常使用插件记录

1.忽略单元测试失败html

一般,你会开发一个带有不少失败单元测试的系统。 若是你正在实践测试驱动开发(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.htmlweb

插件参数表达式:apache

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

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

这个表达式能够从命令行经过 -D 参数设置。maven

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

2.跳过单元测试ide

命令行模式:单元测试

$ 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插件是一个用来建立你应用程序特有分发包的插件ui

你可使用 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>
相关文章
相关标签/搜索