詹金斯(Jenkins)不会正确执行来自.bat的命令
我已经设置了Jenkins,以便它构建我的项目,运行一些测试,然后创建一个包含报告的HTML页面.
I have set up Jenkins so that it builds my project, runs some tests and then creates an HTML page containing a report.
我制作了一个.bat文件以在浏览器中打开html报告.该.bat文件中只有一行:
I made a .bat file to open the html report in my browser. There is just one line in that .bat file :
"E:\user\Visual Studio 2010\JenkinsWorkspace\JobTest\index.html"
当我自己在提示符下运行.bat时,页面index.html处于打开状态(因此它可以正常工作).
但是问题是当我设置詹金斯的工作来运行该.bat时,什么都没有发生. 调用.bat后,该作业被卡住,并且从未完成.
But the problem is that when I set up a Jenkins' job to run that .bat, nothing happens. The job gets stuck after calling the .bat and never finishes.
知道为什么吗?
注意:我还有其他的.bat(不会打开html页面),它们已经由詹金斯(Jenkins)成功执行.
Note: I have other .bat (that do not open html pages) that are successfully executed by Jenkins.
这是我在詹金斯菜单中的提示日志中得到的错误:
here is the errors I get in the prompt log from Jenkins's menu :
C:\ Program Files \ Jenkins \ jobs \ JobTest2_enUnSeulScript \ workspace> echo 正在打开html页面" >>正在打开html页面"
C:\Program Files\Jenkins\jobs\JobTest2_enUnSeulScript\workspace>echo " Opening html page" " >> Opening html page"
C:\ Program
Files \ Jenkins \ jobs \ JobTest2_enUnSeulScript \ workspace>"C:\ Program
Files \ Google \ Chrome \ Application \ chrome.exe" E:\ user \ Visual
Studio 2010 \ JenkinsWorkspace \ JobTest \ testResults.14h05m15s65ms.11.04.2013.trx.htm
[688:3900:0411/140520:ERROR:gpu_info_collector_win.cc(96)]无法
检索有效的WinSAT评估.
[688:3900:0411/140520:ERROR:process_singleton_win.cc(540)]锁定文件
无法创建!错误代码:32
[688:3900:0411/140520:ERROR:chrome_browser_main.cc(1157)]无法执行
为您的配置文件目录创建一个ProcessSingleton.这意味着
运行多个实例将启动多个浏览器进程
而不是在现有流程中打开新窗口.现在正在堕胎
以避免个人资料损坏.
构建步骤"Executer une ligne de commande batch Windows"将构建标记为失败[htmlpublisher]
归档HTML报告... [htmlpublisher]在PROJECT级别归档
E:\ user \ Visual Studio 2010 \ JenkinsWorkspace \ JobTest到C:\ Program
Files \ Jenkins \ jobs \ JobTest2_enUnSeulScript \ htmlreports \ HTML_Tests_Report
完成:失败
C:\Program
Files\Jenkins\jobs\JobTest2_enUnSeulScript\workspace>"C:\Program
Files\Google\Chrome\Application\chrome.exe" "E:\user\Visual
Studio 2010\JenkinsWorkspace\JobTest\testResults.14h05m15s65ms.11.04.2013.trx.htm"
[688:3900:0411/140520:ERROR:gpu_info_collector_win.cc(96)] Can't
retrieve a valid WinSAT assessment.
[688:3900:0411/140520:ERROR:process_singleton_win.cc(540)] Lock file
can not be created! Error code: 32
[688:3900:0411/140520:ERROR:chrome_browser_main.cc(1157)] Failed to
create a ProcessSingleton for your profile directory. This means that
running multiple instances would start multiple browser processes
rather than opening a new window in the existing process. Aborting now
to avoid profile corruption.
Build step 'Exécuter une ligne de commande batch Windows' marked build as failure [htmlpublisher]
Archiving HTML reports... [htmlpublisher] Archiving at PROJECT level
E:\user\Visual Studio 2010\JenkinsWorkspace\JobTest to C:\Program
Files\Jenkins\jobs\JobTest2_enUnSeulScript\htmlreports\HTML_Tests_Report
Finished: FAILURE
如果您将Jenkins作为Window的服务运行,则可能需要启用该服务才能与桌面交互.请执行以下操作:
If you are running Jenkins as a Window's service, you will probably need to enable the service to interact with the desktop. Do the following:
- 打开服务模块
- 右键单击Jenkins,然后选择属性"
- 在登录"选项卡上,以本地系统帐户"身份运行,然后选中允许服务与桌面交互"复选框
-或-
您可以通过命令行运行Jenkins.即:"java -jar jenkins.war".
You can run Jenkins via the command-line. Ie: "java -jar jenkins.war".