一尘不染

Jenkins与Tomcat-无法连接到存储库:无法初始化

tomcat

问题:

  • 我已经设置Jenkins v1.605托管与Apache Tomcat 7.0.59Windows 7 SP1 x64身后corporate proxy

  • 我在Jenkins中配置了JDK,Git和Maven安装路径。还在“管理插件”的“高级”选项卡下配置了代理

  • 我在Eclipse上有一个Java项目,该项目已Bitbucket使用EGit插件托管在存储库中,我正尝试通过https将其连接到Jenkins

  • 我在Jenkins中创建了一个新作业,添加了存储库URL(https://@bitbucket.org//.g​​it),并在下一步中添加了我的凭据。这是我收到以下错误的地方:

Failed to connect to repository : Could not init D:\Work\apache- tomcat-7.0.59\temp\hudson4595160075978517187tmp

我尝试过的

在过去的两天内,我检查了约20个SO问题以及许多其他网站,并实施了其他发现有用的解决方案,但无济于事。这是我尝试过的:

  • 在git中配置http / https代理之后(从该答案和这个问题开始),试图从Git Bash克隆存储库。该存储库已成功克隆,但是Jenkins无法连接到该存储库。

  • 仔细检查了Jenkins中的git安装路径配置此答案和许多其他答案)

  • 我从降级最新版本的git的和git客户端插件分别1.5.0和1.0.7。此后,我输入了带有凭据的URL,但得到了相同的结果。在此之后,我恢复了最新版本。

  • 我尝试连接到GitHub存储库,但遇到了同样的问题

  • 尝试输入各种格式的仓库URL

  • 我清除了Tomcat的temp文件夹,并用Tomcat重新启动了Jenkins,但是它没有解决问题

有人可以告诉我我是否在这里错过什么吗?在代理工作时是否应该执行其他步骤?还是其他问题?


阅读 278

收藏
2020-06-16

共1个答案

一尘不染

我遇到了这个问题,并使用ProcessMonitor调查了服务器上发生的情况。我发现此特定错误有助于查明问题所在:

java.exe  CreateFile  C:\Users\...\AppData\Local\GitHub\PortableGit_blabla\cmd init C:\Users\...\AppData\Local\Temp\hudsonblablatmp NAME INVALID

cmd窗口中复制和粘贴命令会出现C:\... is not recognized as an internal or external command...错误。

发生的情况是,詹金斯(Jenkins)试图git init在一个临时文件夹中执行该命令。但是我注意到init服务器上有问题的命令的选项前面没有git可执行文件,这使我转向了Path to Git executableJenkins配置中的设置。我已经按照(C:\...\cmd)的样子进行了配置,但是将其视为简单路径(即文件夹链),未指定可执行文件。事实证明,詹金斯只是在获取该值,并将其用作可执行文件的绝对路径。因此,我通过附加\git.exe它来解决该问题,

tl; dr

确保Path to Git executablein Jenkins的配置是可执行文件的绝对路径, 并且 该路径中包含可执行文件:

例如 c:\Users\User\AppData\Local\GitHub\PortableGit_<guid>\cmd\git.exe

2020-06-16