问题:通过 Jenkins 触发 VBScript 时 Excel 不可见

我编写了一个简单的 VBScript 代码:

  • 打开 Excel 工作簿

  • 使 Excel 工作簿可见

  • 用当前系统时间更新Sheet1的Cell(1,1)的内容

  • 保存Excel工作簿

代码如下:

Option Explicit
Dim objExcel, objBook, objSheet, strPath
strPath = "C:\Users\a614923\Work Repository\Local\Test Complete\Working\05012019\bonn-6.11.9_Regression\FIL_REGRESSION\Stores\Files\ExternalDriver\Test.xlsx"
Set objExcel = CreateObject("Excel.Application")
objExcel.Visible = True
objExcel.DisplayAlerts = False
Set objBook = objExcel.Workbooks.Open(strPath)
Set objSheet = objBook.Sheets("Sheet1")
objSheet.Cells(1,1) = "Time: " & time
objBook.Save
'objBook.Close
'objExcel.Quit

当我运行这个 VBScript 文件时(直接通过双击,而不是通过 Jenkins),上面提到的所有 4 个步骤都运行良好。当我通过 Jenkins 运行相同的文件时,会发生以下情况:

  • Excel工作簿打开

  • Sheet1的Cell(1,1)的内容更新为当前系统时间

  • Excel工作簿已保存

问题是 Excel 工作簿不可见。 我已经在这一步停留了几个小时。今天是我第一次使用 Jenkins。我缺少任何 Jenkins 配置吗?有没有人遇到过这个问题?

我在 Jenkins 上运行 Windows 批处理命令 以实现相同的目的:

C:\Windows\SysWOW64\cscript.exe "C:\Users\a614923\Work Repository\Local\Test Complete\Working\05012019\bonn-6.11.9_Regression\FIL_REGRESSION\Stores\Files\ExternalDriver\TEST.vbs"

这是运行构建后我的构建控制台的样子:

由用户 Gurmanjot Singh 发起

在工作区 C:\Program Files (x86)\Jenkins\workspace\SuiteRunner 中构建

[SuiteRunner] $ cmd /c 调用 C:\WINDOWS\TEMP\jenkins2976471610072523635.bat

C:\Program Files (x86)\Jenkins\workspace\SuiteRunner>C:\Windows\SysWOW64\cscript.exe "C:\Users\a614923\Work Repository\Local\Test Complete\Working\05012019\bonn-6.11.9 _Regression\FIL_REGRESSION\Stores\Files\ExternalDriver\TEST.vbs"

Microsoft (R) Windows 脚本宿主版本 5.8

版权所有 (C) 微软公司。版权所有。

C:\Program Files (x86)\Jenkins\workspace\SuiteRunner>exit 0

完成:成功

任何帮助/建议将不胜感激。

解答

我从这个answer得到了帮助 为了解决这个问题,我执行了以下步骤:

1.从https://jenkins.io/download/下载通用war包

在此处输入图像描述

  1. 使用命令java -jar jenkins.war从命令行运行 jenkins

在此处输入图像描述

  1. 完成安装(配置代理,如果有的话;下载插件,凭据等)在此处输入图像描述

4.输入批处理命令在此处输入图像描述

5.点击立即构建后,我可以看到excel正在启动。 在此处输入图像描述

Logo

CI/CD社区为您提供最前沿的新闻资讯和知识内容

更多推荐