`

使用dos命令实现mvn的自动编译以及test case的运行

 
阅读更多

项目需要每天自动编译代码,运行test case,然后发邮件给项目组里的人。这个工作本来可以用hudson来做的,但因为自己要改一些文件,感觉用dos命令比较方便。hudson下次再学吧。

 

用dos命令做的步骤是:

1.建立windows计划任务,让它定点运行bat文件

2.在P4上建立daily build需要的client

3.bat文件中做的工作包括:

 

    > dos命令将P4上的代码下载到本地

    > 将需要更新的文档复制到相应的文件夹

    > 调用mvn clean install命令编译文件,运行相应的test case

    >  将编译结果发给组内成员

 

    下面是dos代码

 

d:
p4 set P4PORT=10.40.30.19:1666
p4 set P4USER=ffan
p4 set P4PASSWD=Frank7#
p4 set P4CLIENT=DailyBuilder130

echo '------------p4 sync main----------------'
p4 sync //depot/engineering/projects/z7/dev/delibird_udm_phase1/...

set root=d:\depot
set fileDir=d:\delibird
set filename=buildResult%date:~0,2%%date:~3,2%%date:~6,4%.log
set to=ffan@seven.com;tzhang@seven.com;tyan@seven.com;nsi@seven.com;dlan@seven.com;zhao@seven.com 

echo 'copy daily builder config file'
copy %fileDir%\dailybuilderConfig\z7.properties %root%\engineering\projects\z7\dev\delibird_udm_phase1\java\z7-data\src\test\resources\
copy %fileDir%\dailybuilderConfig\pom.xml %root%\engineering\projects\z7\dev\delibird_udm_phase1\java\z7-data\
if exist %root%\engineering\projects\z7\dev\delibird_udm_phase1\output ( rmdir /s /q %root%\engineering\projects\z7\dev\delibird_udm_phase1\output )

echo '------------p4 sync main finish---------'
cd %root%/engineering/projects/z7/dev/delibird_udm_phase1/java
set MAVEN_OPTS=-Xms256m -Xmx512m 
echo '------------mvn clean install-------------------'
mvn clean install > %fileDir%\%filename%  &cd %fileDir% & java -cp SendEmail.jar;lib\mail-1.4.4.jar com.seven.sendemail.SendEmail -f %filename% -to %to% -s DailyBuildReport & move .\%filename% \\hzs-dc1\public\frank_fan & start dudutest.bat

 

    接下来需要下载SVN上的代码然后运行test case

   d:

TortoiseProc.exe /command:update /path:"D:\udm" /closeonend:1

set root=d:\depot
set fileDir=d:\delibird
set filename=dudutest%date:~0,2%%date:~3,2%%date:~6,4%.log
set to=ffan@seven.com;tzhang@seven.com;tyan@seven.com;nsi@seven.com;dlan@seven.com;zhao@seven.com

echo 'copy daily builder config file'
copy %fileDir%\dudutestConfig\z7.properties %root%\engineering\projects\z7\dev\delibird_udm_phase1\output\dev\binaries\java\z7-relay\z7-relay-SNAPSHOT\config
copy %fileDir%\dudutestConfig\z7.properties %root%\engineering\projects\z7\dev\delibird_udm_phase1\output\dev\binaries\java\z7-ce-connector\z7-ce-connector-SNAPSHOT\config
 
cd %fileDir%
start relay.bat 
start ce.bat  

sleep 50

set MAVEN_OPTS=-Xms256m -Xmx512m 
echo '------------mvn clean install-------------------'
cd D:\udm\
mvn clean install > %fileDir%\%filename%  &cd %fileDir% & java -cp SendEmail.jar;lib\mail-1.4.4.jar com.seven.sendemail.SendEmail -f %filename% -to %to% -s DuduTestReport & move .\%filename% \\hzs-dc1\public\frank_fan & taskkill /f /T  /fi "windowtitle eq ceBat" & taskkill /f /T  /fi "windowtitle eq relayBat"
分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

    MVN常用命令.docx

    maven常用指令大全Maven常用命令: 1. 创建Maven的普通java项目:  mvn archetype:create  -DgroupId=packageName  -DartifactId=projectName  ...5. 运行测试:mvn test  6. 产生site:mvn site 

    Storm编程实践(安装Maven-使用Maven编译运行代码-mvn 打包)

    Storm 编程实践(安装 Maven-使用 Maven 编译运行代码-mvn 打包) 本文档介绍了 Storm 编程实践的实践报告,涵盖了安装 Maven、使用 Maven 编译运行代码和 mvn 打包等内容。报告中还包括了实验环境的配置、实验内容...

    mvn 常用命令手册mvn开发必备

    mvn常用命令,平时使用比较多的,相信会很要帮助。

    Windows下git拉取/推送,SVN更新/提交,maven自动编译打包,angular打包的bat脚本

    Windows下实现的,git的自动拉取推送,svn的自动拉取和推送,maven自动编译,angular的自动打包发布,bat脚本

    mvn常用命令

    15. 只测试不编译,也不测试编译:`mvn test -skipping compile -skipping test-compile` 其他命令 16. 清除Eclipse的一些系统设置:`mvn eclipse:clean` `mvn -version/-v`显示版本信息 `mvn archetype:generate`...

    hadoop源码编译mvn库

    hadoop源码编译所需要的maven仓库,省去编译时下载时间。

    Mvn常用命令总结

    关于Maven在使用中常用的一些命令

    Cmd执行mvn clean package 命令使用文档

    Cmd执行mvn clean package 命令使用文档

    maven常用命令.docx

    6.mvn test 运行测试 7.mvn site 产生site 8.mvn test-compile 编译测试代码 9.mvn -Dtest package 只打包不测试 10.mvn jar:jar 只打jar包 11.mvn test -skipping compile -skipping test-compile 只测试而不编译,...

    maven_实战_学习笔记

    命令:mvn clean compile 解释:clean告诉maven清理target目录 compile告诉maven 编译项目主代码 测试代码 位置:src/test/java 命令:mvn clean test 打包运行 命令:mvn clean package 解释:执行打包命令 ...

    apacke-wicket-mvn编译

    自用,在线转移资源,使用带mvn插件的eclipse直接导入即可。

    maven的清理

    mvn clean test --> 运行清理和测试 mvn clean package--> 运行清理和打包 mvn clean install --> 运行清理和安装,会将打好的包安装到本地仓库中,一边其他的项目可以调用 mvn clean deploy --> 运行清理和发布...

    maven+jrebel热编译

    于是后面我用了jrebel实现热编译,这样开发就方便了很多,后面开发都只需要编译一次,有代码或者页面改动,都会自动去编译,不用maven再重新编译发布一次,过程已经整理出文档,按照文档配置就可以实现热编译。...

    如何提高Maven多模块项目编译速度.docx

    mvn clean package -T 4C -Dmaven.test.skip=true -Dmaven.compile.fork=true -T 4C 代表本机4个CPU内核都参与编译工程, -Dmaven.test.skip=true 代表跳过测试 , -Dmaven.compile.fork=true 使用多线程编译。

    maven常用的命令

    该命令将编译 src/test/java 目录下的测试源代码,并生成目标文件。 4. 清空 使用以下命令可以清空目标文件: `mvn clean` 该命令将删除目标文件夹,并清空编译结果。 5. 运行测试 使用以下命令可以运行测试:...

    mvntest

    mvntest

    Jenkinsfile调用jdk命令和maven或grandle编译命令工具配置

    这个工具包包含了 JDK 的所有命令,我们可以使用这些命令来编译和运行我们的 Java 项目。然后,我们需要在 Jenkins 界面上配置 JDK 的路径。在全局工具配置中,我们可以添加 JDK 工具包的名称和对应的路径。这将允许...

    mvn 配置 yui 自动 打包

    mvn 配置 yuicompressor 自动 打包。资源包含JAR包以及maven的配置文件的内容。

    test-mvn clean install -Dmaven.test.skip=true dependency:sources

    NULL 博文链接:https://swanmarx.iteye.com/blog/1778928

Global site tag (gtag.js) - Google Analytics