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

Azure DevOps配置自托管代理后Maven构建耗时过长且出现上传报错

代理配置完整性排查
  • 你当前仅配置了VSTS_HTTP_PROXY变量,覆盖范围不足,需要在runsvc.sh中补充全量代理配置,包含HTTP、HTTPS和不走代理的地址列表,示例如下:
export DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=1
# 代理基础配置
export VSTS_HTTP_PROXY=http://<代理地址>:<端口>
export VSTS_HTTPS_PROXY=http://<代理地址>:<端口>
export HTTP_PROXY=http://<代理地址>:<端口>
export HTTPS_PROXY=http://<代理地址>:<端口>
# 代理需认证时使用格式:http://<用户名>:<密码>@<代理地址>:<端口>
# 配置不走代理的内网地址
export NO_PROXY=localhost,127.0.0.1,*.企业内网域名
  • 补充Maven本身的代理配置,修改自托管代理机器上~/.m2/settings.xml文件,新增代理节点:
<proxies>
  <proxy>
    <id>corp-proxy</id>
    <active>true</active>
    <protocol>http</protocol>
    <host>你的代理地址</host>
    <port>代理端口</port>
    <nonProxyHosts>localhost|127.0.0.1|*.企业内网域名</nonProxyHosts>
  </proxy>
</proxies>
  • 修改runsvc.sh配置后必须重启自托管代理服务,配置才会生效。
Blob上传失败问题排查
  • 先在自托管代理机器本地执行curl -v https://<你组织对应的Azure存储域名>.blob.core.windows.net,验证网络连通性,如果返回网络不可达,说明代理未放行Azure存储相关域名。
  • 确认企业代理已放开*.blob.core.windows.net、*.visualstudio.com等Azure DevOps依赖域名的HTTPS访问权限。
  • 如果使用自签证书的代理,需要把代理根证书导入到自托管代理机器的系统信任证书库,同时导入到JDK的信任证书库,避免SSL校验失败。
Maven构建耗时过长排查
  • 优先在settings.xml中配置企业内部私有Maven镜像源,替换默认的中央仓库,减少跨网依赖下载耗时,示例配置:
<mirrors>
  <mirror>
    <id>internal-maven</id>
    <mirrorOf>*</mirrorOf>
    <url>企业内部Maven镜像源地址</url>
  </mirror>
</mirrors>
  • 在流水线的Maven任务参数中添加-X开启Debug日志,定位耗时卡点是在依赖下载、单测执行还是其他环节,针对性优化。
  • 如果卡点在单测执行阶段,检查单测逻辑是否存在未配置NO_PROXY的外网调用,避免无意义的代理等待。
配置验证步骤
  • 所有配置修改完成后,先在自托管代理机器本地手动执行Maven构建命令,确认本地可以正常跑完构建且无网络报错。
  • 重启自托管代理服务后重新触发流水线任务,观察日志排查问题是否解决。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 10:39:03