3

我正在尝试设置 Jenkins 以进行持续集成。目前,我正在尝试做一些非常简单的事情,但遇到了问题,我不确定我做错了什么,或者我想做的事情是不可能的。

我目前有一个文件,它在 PC 上显示为 Windows 批处理文件,在 Mac 上显示为 Unix 可执行文件。我从 Mac 上运行它,它使用xcodebuildandxcrun来制作和共享档案。

我现在想做的只是让 Jenkins 为我做这件事(我稍后会添加更多东西)所以我添加了一个构建步骤并输入了批处理文件的路径:users/mcbuild/documents/work/fts /ArchiveFTS.bat

但是,当我单击构建时,我得到了这个:

Started by user anonymous
Building in workspace /Users/Shared/Jenkins/Home/jobs/FTS Build/workspace
[workspace] $ cmd /c call /var/folders/2n/gysykb914qlgtg2b0flhvh4r00007c/T/hudson6994878138376885970.bat
FATAL: command execution failed
java.io.IOException: Cannot run program "cmd" (in directory "/Users/Shared/Jenkins/Home/jobs/FTS Build/workspace"): error=2, No such file or directory

通过搜索,我找到了几个可能的解决方案:

必须指定外壳,C\windows\system32\cmd.exe 我不确定这意味着什么或如何做到这一点,有人可以解释一下吗?

我不确定,但看起来 Hudson 不是在尝试.bat在 Unix 系统上执行脚本吗?这是否意味着我试图做的事情是不可能的,如果不是,请问我有什么选择?

一些建议涉及检查您使用 Hudson 的用户,并可能更改我不确定我使用它的用户或为什么它以匿名的形式出现它是否存在匿名问题,如果是,我该怎么做请改一下?

在此先感谢您的帮助。如果您需要更多信息,请告诉我。

4

1 回答 1

6

您似乎添加了“执行 Windows 批处理命令”类型的构建步骤,但您正在 Mac 上运行此作业。您需要做的是从“执行 shell”构建步骤运行您的 xcode/xcrun 文件。如果您仍然有问题,请确保您可以从 Mac 上的命令提示符手动运行相同的文件(而不是通过单击它)。如果您收到有关“无法运行程序 sh”的错误,您可能需要配置 sh 的路径。在命令提示符下键入“which sh”以找出 sh 所在的位置。单击Manage Jenkins,然后单击Configure System,然后在Shell Executable 下输入路径。

于 2013-10-28T13:06:07.733 回答