我正在尝试自动构建一个非常古老的VB6应用程序。它由许多项目和解决方案组成,所有项目和解决方案都是由一系列批处理文我删除了所有交互式部分,例如由于构建失败而导致的暂停和对话框但仍然存在问题。
虽然正在使用干净的项目构建项目然后重建,但它们通常在第一次失败并且必须重建。显然,这也是手动建立团队课程的标准。
另一个问题是詹金斯经常挂起建立其中一个项目。在挂起之前,重新开始构建可以进一步或不进行。这些不是构建错误,它只是一种停顿。我想知道是否有jenkins批处理文件的环境设置,以便我可以尝试调整。
欢迎任何一个问题的输入。
答案 0 :(得分:0)
尝试通过从詹金斯调用批处理文件来编译VB6项目时,我遇到了类似的问题:
似乎与从Jenkins Java进程中启动时执行vb6.exe进程的用户上下文有关。 为了工作(从詹金斯执行时),我必须使用PsExec(来自SysinternalsSuite)来启动vb6,并使用绝对文件路径传递所有参数。
我在批处理中使用的命令行示例(该批处理是从Jenkins bat管道步骤中调用的:
c:\tools\SysinternalsSuite\psexec -accepteula -nobanner -i -h "C:\Program Files (x86)\Microsoft Visual Studio\VB98\VB6.EXE" /m "C:\JenkinsWorkspace\test\build\myproject.vbp" /outdir "C:\JenkinsWorkspace\test\build\Release" /out "C:\JenkinsWorkspace\test\build\Release\build.log"
我在Linux机器上的Jenkins主服务器上有管道作业,在Windows 2019 Server节点上启动了Jenkins代理,该代理又调用了编译vb6项目的批处理文件