You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Jenkins构建Angular前端时Bower安装依赖遇HTTP请求失败求助

解决Jenkins中Bower安装依赖时的Git HTTP请求失败问题

先给你理清楚问题根源:你遇到的两个HTTP请求失败错误,本质都是因为Jenkins服务器上的Git客户端版本太老——GitHub早就停止支持dumb-http这种旧的Git传输协议了,而老版本Git默认会用这个协议,所以才会触发这些报错。下面是具体的解决步骤:

1. 优先升级Jenkins服务器上的Git客户端

这是最直接有效的解决方案,错误提示已经明确要求升级Git:

  • Linux服务器:用系统包管理器升级,比如Debian/Ubuntu系执行:
    sudo apt-get update && sudo apt-get install git
    
    CentOS/RHEL系执行:
    sudo yum update git
    
  • Windows服务器:直接下载最新稳定版Git安装包,覆盖原有安装即可。
  • 升级完成后,务必检查Jenkins全局配置:进入Jenkins后台 → 系统管理 → 全局工具配置,找到Git配置项,确保路径指向刚升级的Git二进制文件(比如Windows下的git.exe路径),最后重启Jenkins让配置生效。

2. 手动验证Git是否正常工作

升级后先在Jenkins服务器的命令行里手动测试,确保Git能正常访问GitHub:

git ls-remote --tags --heads https://github.com/angular-ui/ui-utils.git

如果这个命令能成功返回结果,说明Git的问题已经解决,再运行bower install angular-card-input或者你的Bower构建脚本,应该就能正常执行了。

3. 备选方案:处理Bower依赖的协议或缓存

如果升级Git后还是有问题,可以试试这两个小技巧:

  • 清理Bower缓存:旧缓存可能残留错误的依赖信息,执行以下命令清除后重新安装:
    bower cache clean
    bower install
    
  • 切换依赖的Git协议:如果你的环境下HTTPS访问GitHub有问题(比如代理、证书),可以把bower.json里的HTTPS依赖改成SSH协议。比如把"angular-ui-utils": "bower"改成:
    "angular-ui-utils": "git@github.com:angular-ui/ui-utils.git#bower"
    
    注意这需要给Jenkins服务器配置好GitHub的SSH密钥,确保能无密码拉取代码。

4. 代理环境下的额外配置

如果Jenkins在代理网络中,还要确保Git和Bower都正确配置了代理:

  • Git配置代理:
    git config --global http.proxy http://你的代理地址:端口
    git config --global https.proxy http://你的代理地址:端口
    
  • Bower配置代理:在项目根目录的.bowerrc文件中添加(如果没有就新建一个):
    {
      "proxy": "http://你的代理地址:端口",
      "https-proxy": "http://你的代理地址:端口"
    }
    

内容的提问来源于stack exchange,提问作者JonyD

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 10:32:24