当前位置: 首页 > 面试题库 >

在Jenkins中更改Windows Shell(从Cygwin到Git Bash / msys)

陆洲
2023-03-14
问题内容

我有一个装有Jenkins代理和Cygwin的Windows 7和Windows Server
2012从属服务器。我想避免使用Cygwin,而只使用Windows的Git随附的Git
Bash外壳程序(我认为它称为msysgit)。因此,我将重命名C:\cygwin64C:\cygwin64.bakC:\cygwin64\bin从路径中删除,然后重新启动。

Windows 2012框现在可以正常工作,运行(Unix)Shell脚本$OSTYPE = msys,和uname = MSYS_NT-6.3(指示Git Bash Shell正在运行)。

Windows 7框将不运行任何内容,并出现以下错误:

在工作空间C:\ Users \ Jenkins \ workspace \ TEST
[win7]中的win7上远程构建$ sh -xe C:\ Users \ jenkins \ AppData \ Local \ Temp \
hudson5047939025129374618.sh
系统找不到指定的文件
致命:命令html" target="_blank">执行失败的
java.io.IOException:无法运行程序“ sh”(在目录“ C:\ Users \ Jenkins \ workspace \
TEST”中):CreateProcess
错误= 2,系统找不到指定的文件。
在java.lang.ProcessBuilder.start(ProcessBuilder.java:1041)

所以我的问题是,如何配置Jenkins使用C:\Program Files\Git\bin\sh.exeC:\Program Files\Git\usr\bin\bash.exe运行Shell脚本?


问题答案:

我已经解决了。詹金斯将只选择路径中的第一个sh.exe。Git Bash在处有一个exe C:\Program Files\Git\usr\bin,因此,如果将其添加到路径的开头,它将由Jenkins提取。

进行此更改后,您必须重新启动从属与Jenkins的连接,否则路径将不会传播。如果您使用的是Java Web Start,只需关闭Java窗口并重新启动它。



 类似资料:
  • 问题内容: 我可以从DOS提示符下成功连接到MySQL,但是当我尝试从cygwin连接时,它会挂起。 怎么了? 问题答案: 假设您具有MySQL的本机Windows版本,(命令提示符)Windows和Windows 之间没有终端仿真不兼容。提示没有出现。 要确认这一点,请键入命令并返回-它可能会起作用,但是命令的提示和回显(您键入的内容)会丢失。 系统属性或in中可能都存在一种解决方法,但是我从来

  • 我在Windows中有。我正在尝试运行,但它给了我错误。 意图:我想使用解析JSON。

  • 我在Windows计算机上安装了cygwin并配置了openssh(ssh-host-config-y)。现在从网络上的一个Linux我有一个奇怪的行为: 没有.ssh(在Linux上),我使用密码成功连接 使用.ssh(和我在Windows的.ssh/authorized_keys上的公钥,我失败了(它不问我密码): 有什么建议吗?

  • Gitbash 是一个 bash 工具集,对 git 的常用子命令做了一系列别名处理。不用再输入类似 `git clone http://.....` 的命令直接进行 'clone http://...' 就可以,省掉了 git 主命令的输入。  对于 commit , checkout 等常用子命令,也采取了 svn 的缩写方式,直接输入 co 和 ci 就能完成 git checkout 和

  • 问题内容: 我想知道如何更改Jenkins的默认端口8080。使用linux或Windows,只需通过配置文件即可完成。但是Jenkins的Mac配置文件看起来与其他文件完全不同。 当然,启动服务器时可以传递–httpPort参数,但是我想在配置文件中执行此操作。 有没有选择的余地? PS:通过Apache传递Jenkins实例可以解决问题,但是我想更改Jenkins端口。 谢谢! 问题答案: 我

  • 问题内容: 我在詹金斯(Jenkins)的多分支项目工作正常,但我想修改 职位 描述,默认情况下,该 职位 描述为“全项目名称:xxxx /”,以使其更有意义。 通过使用执行我时可用的变量,我可以轻松更改构建说明,但是我不知道如何修改父作业描述。 我的用例是我的存储库的每个分支都有一个关联的容器,该容器在完成后会用最新的构建进行更新。因此,我的多分支项目中的每个作业都有其容器和Web URI,我希