【问题标题】:Running a Windows batch file in Jenkins在 Jenkins 中运行 Windows 批处理文件
【发布时间】:2014-07-29 03:59:02
【问题描述】:

我试图通过 Windows 服务器上的 DOS 命令行为 Jenkins 中的一个项目运行我的测试用例。我正在使用 Jenkins 版本。 1.559.

我正在尝试通过具有 java 命令的 Jenkins 作业运行 Windows 批处理文件。

Under the "Build" section >> "Execute Windows Batch command" >> Command: call E:\Jenkins\App\UnitTests\App_UnitTests.bat 

保存并构建作业。

我收到一个错误,这是我的控制台输出

C:\Program Files (x86)\Jenkins\jobs\App Test Cases\workspace>java.exe -cp "E:\Jenkins\App\PPS\App\bin\;E:\Jenkins\App\PPS\App\lib\junit-4.10.jar;E:\Jenkins\App\PPS\App\lib\*.jar;" org.junit.runner.JUnitCore com.omnitracs.fra.junit.EventTests 
'java.exe' is not recognized as an internal or external command, operable program or batch file.

C:\Program Files (x86)\Jenkins\jobs\App Test Cases\workspace>PAUSE
Press any key to continue . . . 

C:\Program Files (x86)\Jenkins\jobs\App Test Cases\workspace>EXIT
Build step 'Execute Windows batch command' marked build as failure
Finished: FAILURE

java 命令在 Jenkins 之外运行良好。 我已经为本地用户设置了 JAVA_HOME,还设置了 PATH 变量以指向 java.exe 所在的位置。

我做错了什么?请帮忙。

【问题讨论】:

  • 您需要确保 java.exe 在运行 Jenkins 构建的用户的路径上 - 或者只需将其添加到系统路径中。
  • @gareth_bowles 对不起,我是 Jenkins 新手。我如何找出我正在为 Jenkins 工作运行的用户?当我在 Jenkins 之外运行 java.exe - 打开 cmd 并输入 java 它运行良好。
  • @Ram 您将服务配置为在特定用户帐户下启动。另外,我猜 E: 不是一个实际的驱动器,只是一个映射的驱动器。而 java home 应该是 java home。不是 java home\bin
  • @Cole9350 Under Jenkins>> Credentials >> Global Credentials 我配置了一个用户。就是这样吗? E: 是一个 ACTUAL 驱动器,未映射。
  • @Ram 不,在winkey+r下-> services.msc->你的jenkins服务->右键和属性->登录选项卡->这个账号->保存并重启服务...@ 987654321@

标签: jenkins jenkins-plugins


【解决方案1】:

对于 Windows 环境,更高级的构建需要一些额外的配置。最终你有两个选择

来自 Jenkins,权威指南:

这个基本安装可以在简单的环境中正常工作,但是你 经常需要微调您的服务。例如,默认情况下, Jenkins 服务将在本地系统帐户下运行。 但是,如果您使用 Maven,Jenkins 将需要一个 .m2 目录 和主目录中的 settings.xml 文件。同样,如果你 正在使用 Groovy,您可能需要一个 .groovy/lib 目录。等等。 为了允许这一点,并使测试您的 Jenkins 安装更容易,请 确保您使用正确的真实用户帐户运行此服务 开发环境搭建。或者,将应用程序作为 系统用户,但使用 Jenkins 中的系统信息页面来检查 /Users/johnsmart/Projects/Books/jenkins-thedefinitive- 指南 目录,并放置必须放在用户主目录中的所有文件 目录在这里....

要将 Jenkins 服务器配置为在服务帐户下运行(建议的选项),请将 Jenkins 安装为服务,并在服务属性下设置登录用户信息。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-07-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-09
    相关资源
    最近更新 更多