maven常用命令

 

Maven,是一种创新的软件项目管理工具,提供了一个项目对象模型(POM)文件的来管理项目的构建,目前我遇到的java项目(开发项目、自动化框架等)基本都是以maven管理项目。在使用过程中,经常要使用一些mvn命令,这里记录下常用的

mvn clean 清理项目生产的临时文件,一般是模块下的target目录

mvn compile 编译源代码,一般编译模块下的src/main/java目录

mvn package 项目打包工具,会在模块下的target目录生成jar或war等文件

mvn test 测试命令,或执行src/test/java/下junit或testng的测试用例

mvn clean test -D maven.filepath=testNg.xml 运行testNg.xml文件,需要注意一下,在pom.xml文件中,配置

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-plugin</artifactId>
                <version>2.22.2</version>
                <configuration>
                    <suiteXmlFiles>
                        <suiteXmlFile>src/test/resources/testNg.xml</suiteXmlFile>
                    </suiteXmlFiles>
                    <forkMode>once</forkMode>
                    <argLine>-Dfile.encoding=UTF-8</argLine>
                    <skipTests>false</skipTests>
                </configuration>
            </plugin>

mvn install 构建项目将打包的jar/war文件复制到你的本地仓库中,供其他模块使用

mvn deploy 将打包的文件发布到远程参考,提供其他人员进行下载依赖

mvn dependency:tree 打印出项目的整个依赖树  

mvn tomcat:run 在tomcat容器中运行web应用

mvn jetty:run 调用 Jetty 插件的 Run 目标在 Jetty Servlet 容器中启动 web 应用

运行指定类,test目录下的XXTest.class类


mvn clean test -P test -Dtest=XXTest -DEnvironment=test
#执行指定测试类
mvn clean test -Dtest=xxTest
mvn clean test -Dtest=xxTest,xxTest2(多个测试类以’,’分隔)

#执行指定测试类下的某个具体测试方法
mvn clean test -Dtest=xxTest#method

#执行指定测试类下的所有以testmethod开头的测试方法
mvn clean test -Dtest=xxTest#testmethod*

#执行指定测试类下的所有以*methodTest结尾的测试方法
mvn clean test -Dtest=xxTest#*methodTest

#执行指定测试类下的所有以包含methodTest的测试方法
mvn clean test -Dtest=xxTest#*methodTest*

必须指定环境,否则可能不知道运行哪个目录下的测试类,会报错

#如只运行mvn -Dtest=xxTest,会报如下错误
[ERROR] No goals have been specified for this build. You must specify a valid lifecycle phase or a goal in the format <plugin-prefix>:<goal> or <plugin-group-id>:<plugin-artifact-id>[:<plugin-version>]:<goal>. Available lifecycle phases are: validate, initialize, generate-sources, process-sources, generate-resources, process-resources, compile, process-classes, generate-test-sources, process-test-sources, generate-test-resources, process-test-resources, test-compile, process-test-classes, test, prepare-package, package, pre-integration-test, integration-test, post-integration-test, verify, install, deploy, pre-clean, clean, post-clean, pre-site, site, post-site, site-deploy. -> [Help 1]
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please read the following articles:

需要加条件,如只运行test下的XXTest,可以 mvn clean test -Dtest=XXTest 或者加上指定环境,如mvn clean test -P test -Dtest=XXTest 

命令说明,可以看下对比

mvn clean:删除工程target下所有编译文件

mvn clean test:

除了删除工程target下的文件,还会重新编译../target/classes和../target/test-classes

mvn clean test -P test/st/prod:清理target并重新编译,指定环境运行

mvn clean test -P test -Dmaven.filepath=testng.xml  -DisSend=1

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值