gpt4 book ai didi

windows - 从 Jenkins 运行批处理文件挂起并且不返回到 Jenkins 作业

转载 作者:可可西里 更新时间:2023-11-01 09:37:38 29 4
gpt4 key购买 nike

我在 Jenkins 作业配置中使用“在构建运行后通过 SSH 发送文件或执行命令”选项。我在远程服务器上运行 .bat 文件。 .bat 文件正在启动身份验证服务器。身份验证服务器需要在远程服务器上保持正常运行。

身份验证服务器随附一个 .bat 文件以启动和停止服务器。当我运行交付的 .bat 文件时,我的 jenkins 作业挂起并且永远不会完成。交付的名为 startAuth.bat 的 .bat 文件如下所示:

call java -jar Auth.jar db migrate Auth.yml
call java -jar Auth.jar server Auth.yml

基于某些最终用户限制,我无法修改 startAuth.bat 文件,因此我创建了另一个名为 runStartAuth.bat 的 .bat 文件来调用 startAuth.bat。它看起来像这样:

cd c:\tmp
start runStartAuth.bat
exit /b

我的想法是通过使用“开始”,.bat 应该在一个单独的进程中运行,该进程可以保持启动并运行直到下一个 Jenkins 作业运行,并且调用 .bat 将以 exit/b 行退出。不幸的是,Jenkins 的工作似乎忽略了退出而只是旋转和旋转。

我做错了什么?

最佳答案

我不是真正的 Jenkins 专家……但我认为,由于批处理文件上的从属代理 JVM 包装器知道子进程尚未完成,因此它不会将控制权返回给执行程序。

相反,您可以尝试在 Jenkins 从属节点配置上使用相同的命令吗?我相信你会在从节点的高级部分有从启动器前缀命令。

关于windows - 从 Jenkins 运行批处理文件挂起并且不返回到 Jenkins 作业,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28731104/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com