首页 行业资讯 宠物日常 宠物养护 宠物健康 宠物故事
您的当前位置:首页正文

【转】常用插件和mvntest命令

2021-10-22 来源:好兔宠物网
【转】常⽤插件和mvntest命令

⾃定义构建Maven项⽬,需要包括额外的插件或者配置已存在的插件参数。

1. maven-compiler-plugin 指定JDK版本和编码⽅式

compiler插件能解决2个问题:

第⼀: maven 2.1默认使⽤jdk 1.3来编译,这个版本不⽀持注解,compiler插件可以指定JDK版本为1.6,解决这个问题。第⼆:windows平台默认使⽤GBK编码,如果⼯程编码为utf8,也需要在compiler插件中指出,否则按GBK编码,也会出问题

org.apache.maven.plugins maven-compiler-plugin

1.6 1.6

UTF8

2. maven-war-plugin 打war包在web⼦项⽬中指定

org.apache.maven.plugins maven-war-plugin 2.1-beta-1

true

true 可以把JAR⽂件和标准的WAR⽂件同时安装到Maven仓库中

3. 单元测试插件 maven-surefire-plugin

org.apache.maven.plugins maven-surefire-plugin

-Xmx1024m -XX:PermSize=256m -XX:MaxPermSize=256m

**/TestConstants.java

always

-Xmx1024m -XX:PermSize=256m -XX:MaxPermSize=256m调整JVM(-Xmx1024m)和PermSize(-XX:PermSize=256m -XX:MaxPermSize=256m)内存

**/TestConstants.java

运⾏测试脚本时不执⾏TestConstants.java⽂件always

Maven运⾏测试⽤例时,是通过调⽤maven的surefire插件并fork⼀个⼦进程来执⾏⽤例的。forkmode属性中指明是要为每个测试创建⼀个进程,还是所有测试在同⼀个进程中完成。

forkMode 可设置值有 “never”, “once”, “always” 和 “pertest”。

pretest: 每⼀个测试创建⼀个新进程,为每个测试创建新的JVM是单独测试的最彻底⽅式,但也是最慢的,不适合hudson上持续回归once:在⼀个进程中进⾏所有测试。once为默认设置,在Hudson上持续回归时建议使⽤默认设置。

always:在⼀个进程中并⾏的运⾏脚本,Junit4.7以上版本才可以使⽤,surefire的版本要在2.6以上提供这个功能,其中 threadCount:执⾏时,指定可分配的线程数量。只和参数parallel配合使⽤有效。默认:5。alwaysmethods4

4 .Resource插件

${user.home}/asssd.properties

src/main/resources true

**/*

src/main/java

**.xml

运⾏打包命令时,将src/main/resources中的所有⽂件和src/main/java⽬录下的所有.xml⽂件打到jar包中。

其中filters过滤器的作⽤是将所有引⽤⽂件中的${变量名称},替换成antx.properties⽂件中的变量值。要使⽤过滤器时,⾸先需要设置过滤

器:

${user.home}/antx.properties

然后再启动过滤器, true需要过滤,false不需要过滤:true

5、Maven常⽤命令

1、运⾏应⽤程序中的单元测试:mvn test或mvn test -Dtest=***Test, 其中“***Test”为被测试⽤例的类名(不需要输⼊.java)

打开控制台,进⼊测试⼯程所在⽬录:D:\\workspace-sell\\sell-qatest路径;输⼊mvn test命令后,开始执⾏sell-qatest中的所有测试脚本,并将信息输出到控制台。

如果要单独运⾏⼀个测试类⾥的⽤例,如 publishAuctionTest.java,则可以运⾏ mvn test -Dtest=publishAuctionTest2、清除⽬标⽬录中的⽣成结果:mvn clean(清除taget⽂件夹中内容)

3、在本地repo中安装jar:mvn install。运⾏命令后⼯程根⽬录下⽣成target⽂件夹,⽂件夹内存放jar包,class⽂件夹等内容。本地仓库repo中⽣成⼯程jar包⽬录。

4、将⼯程打包:mvn package。运⾏命令后⼯程根⽬录下⽣成target⽂件夹,⽂件夹内存放jar包,class⽂件夹等内容。

5、⽣成Eclipse项⽬⽂件:mvn eclipse:eclipse。运⾏命令后⽣成eclipse⼯程,项⽬的根⽬录下产⽣.project、.classpath⽂件和target⽂件夹。将该⼯程导⼊到eclipse中:打开eclipse,通过file->import,导⼊到eclipse中。6、清除Eclipse⼯程:mvn eclipse:clean。.classpath和.project⽂件会被删除。7、在运⾏install 或package时,测试代码不被执⾏:

第⼀种⽅法:在cmd运⾏mvn install 或mvn package 命令后加上-Dmaven.test.skip=true 。例如:mvn install -Dmaven.test.skip=true

第⼆种⽅法:在pom.xml⽂件的maven-surefire-plugin插件中添加参数:true

org.apache.maven.pluginsmaven-surefire-plugintruetrue

因篇幅问题不能全部显示,请点此查看更多更全内容