Jenkins Windows 节点返回 CreateProcess 错误=193

Jenkins Windows Node returning CreateProcess error=193

我正在尝试为 Jenkins 设置一个 Windows 节点(master 在 Mac/ElCapitan 上 运行ning)以进行 运行 Codeception 验收测试。

jenkins jnlp 文件似乎 运行ning 适当,Jenkins 已在 Windows 节点上创建其目录。我要求它 运行 通过仅在 Firefox 中构建的 ant 进行测试。这是 运行ning 在 master/Apple 机器上的成功测试。

我可以在任何目录的 Windows 节点的命令提示符中键入 "codecept" 并获得默认帮助消息。

我可以 运行 通过使用 codecept 运行 tests/acceptance/all/test.[=14 通过命令提示符进入 Jenkins 在 Windows 节点机器上创建的文件夹来进行测试=]

当尝试通过主机上的 Jenkins 执行此操作时,出现以下错误:

C:\jenkins\workspace\nodeTest\browser\firefox\label\Windows10\build.xml:147: Execute failed: java.io.IOException: Cannot run program "C:\jenkins\workspace\nodeTest\browser\firefox\label\Windows10\vendor\bin\codecept" (in directory "C:\jenkins\workspace\nodeTest\browser\firefox\label\Windows10"): CreateProcess error=193, %1 is not a valid Win32 application

蚂蚁文件:

<property environment="env"/>

<property name="codecept" value="${basedir}/vendor/bin/codecept"/>

<target name="InvalidLogin" depends="CleanPics, InvalidLoginRun" />

<target name="CleanPics" description="clean out directories from previous run.">
    <delete dir="${basedir}/tests/_output" />
    <mkdir dir="${basedir}/tests/_output" />
    <mkdir dir="${basedir}/tests/_output/debug" />

<target name="InvalidLoginRun" description="confirm invalid credentials don't allow login">
    <exec executable="${codecept}" failonerror="true">
        <arg value="run" />
        <arg value="--debug" />
        <arg value="tests/acceptance/all/00loginsInvalidCest.php" />
        <arg value="--xml" />
        <arg value="--env" />
        <arg value="${browser}" />
    </exec>

谷歌搜索让我得到答案,我应该使用 ShellExecute 而不是 CreateProcess 命令,但我不知道如何配置 Ant 文件来执行此操作。有什么想法吗?

vendor/bin/codecept 文件用于 Linux 和其他类 unix 操作系统。
在 Windows.

上使用 vendor/bin/codecept.bat