jenkins|jenkins windows执行批处理脚本总是失败
使用jenkins 在使用编译vc++的一个项目,在执行批处理脚本的时候总是失败,
但是在控制台无论是管理员还是普通用户都能正常编译,jenkins每次都失败,看日志就是调用一个cmd命令直接失败,exit code是1 .
方案一:参考了csdn的一篇博客(下面有链接),才知道可能是权限的问题,用非system用户登录就可以正常编译。
方法很简单。就是登录 Jenkins service。
具体过程:
在"运行"中输入"services.msc"打开服务窗口,找到"Jenkins".
然后右键属性,在“登录”导航中选择“此用户”任何输入能够运行CMD.exe的用户。这里我用了管理员用户。
文章图片
重启服务就能正常编译了。
方案二:用msbuild
---------------------------------
另外需要注意一点小问题
一、Execute windows batch command下面写批处理命令 cmd /c "%WORKSPACE%\builder\build.cmd",
这里需要注意需要加双引号 ,因为装的jenkins是32位版本 jenkins全路径有一个空格,对应的sln工程也需要注意这个。
"C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\devenv.exe" "C:\Program Files (x86)\Jenkins\workspace\xx\xx.sln" /Rebuild "Release|x86"/Project xx /out log.txt
二、另外因为新用jenkins ,他可以直接拉对应的分支
在源码管理里面的 Branches to build:
Branch Specifier (blank for 'any') : 默认是*/master可以默认编译你的分支 比如:*/dev
三、某些环境变量设置需要重启jenkins服务
---------------------------------------------------------------------------
http://blog.csdn.net/hwhua1986/article/details/47778131
今天搭建Jenkins持续集成环境,编译环境是.net,在.net下没有比较好的代码覆盖率测试插件,所以用了开源的OpenCover,计算代码覆盖率,然后用ReportGenerator导出hmtl格式的测试报告。这里用到了批处理脚本,到这里问题出现了。
脚本写好之后在Windows系统下直接运行没有任何问题。但你要把它放在Jenkins里作为编译后执行的话就会报错,很诡异。我自已也怀疑是用户权限的问题。但用普通用户直接运行脚本也还是没问题。下午google了一下。按照http://stackoverflow.com/questions/10952280/execute-windows-batch-command-from-jenkins-fails-but-runs-fine-in-cmd-exe 提供的方式试了一下OK了。
方法很简单。就是登录 Jenkins service。
具体过程:
在"运行"中输入"services.msc"打开服务窗口,找到"Jenkins".
然后右键属性,在“登录”导航中选择“此用户”任何输入能够运行CMD.exe的用户。这里我用了管理员用户。
文章图片
文章图片
-------------------------------------
https://stackoverflow.com/questions/10952280/execute-windows-batch-command-from-jenkins-fails-but-runs-fine-in-cmd-exe
14 down vote | I too had a similar issue once. Try granting the Jenkins service "Logon as This account" right under services.msc and make sure the account you type there is the same as the one you use for running cmd.exe . |
推荐阅读
- CVE-2020-16898|CVE-2020-16898 TCP/IP远程代码执行漏洞
- 字符串拼接成段落,换行符(\n)如何只执行n-1次
- R语言|R语言 函数
- Caffe在Windows10下CPU版本的安装(cpu+anaconda3+vs2013+pycaffe)
- 笔记|如何在Windows11安装安卓子系统()
- windows11|Windows11安装Android子系统
- Windows10|Windows10,Version,1903,7月更新,MSDN镜像下载
- 高效执行力第六课-小结
- 成功通航(用宜搭提升数字化管理效能,确保每次飞行任务安全执行)
- Windows必备良心软件,让电脑更酷更高效率!