jenkins 全局工具变更后,构建的任务为什么没有刷新过来

目录

[一、自由风格项目(你现在的任务)最常见 3 个原因](#一、自由风格项目(你现在的任务)最常见 3 个原因)

[1. 仅改全局工具,任务配置没重新保存(最高频)](#1. 仅改全局工具,任务配置没重新保存(最高频))

[2. 旧 Node 工具缓存目录残留,仍调用损坏的 26.5 版本](#2. 旧 Node 工具缓存目录残留,仍调用损坏的 26.5 版本)

[3. 勾选了缓存 npm,旧环境变量残留](#3. 勾选了缓存 npm,旧环境变量残留)

[二、从节点 Slave Agent 场景(容易忽略)](#二、从节点 Slave Agent 场景(容易忽略))

[三、Pipeline 流水线特殊规则(若你后续用 Jenkinsfile)](#三、Pipeline 流水线特殊规则(若你后续用 Jenkinsfile))

[四、Jenkins 服务缓存兜底修复(全部无效时执行)](#四、Jenkins 服务缓存兜底修复(全部无效时执行))

五、针对你当前场景最简操作步骤(直接照做)

补充关键点


结合你上一篇文章 --libatomic依赖报错场景,分自由风格项目(你当前截图类型) 和通用缓存 / 节点问题说明:

一、自由风格项目(你现在的任务)最常见 3 个原因

1. 仅改全局工具,任务配置没重新保存(最高频)

Jenkins 不会自动同步全局工具变更,修改全局 Node 后,必须进入任务配置页面点「保存」,否则旧的工具绑定缓存不会刷新:

  1. 打开你的项目 → 配置
  2. 直接拉到最底部,点击【保存】(不用修改任何选项,单纯保存即可刷新绑定)
  3. 重新构建

原理:任务的工具选择下拉框缓存存在任务配置 xml 里,全局工具新增 / 修改后,任务配置不保存就不会加载新工具环境。

2. 旧 Node 工具缓存目录残留,仍调用损坏的 26.5 版本

你之前用 NodeJS26.5,二进制缺依赖执行失败,Jenkins 会复用本地已下载的旧工具包,不会自动重新下载新版:

  1. 清理 Jenkins 工具缓存目录(Linux)
bash 复制代码
# 删除旧损坏的Node26.5安装文件
rm -rf /var/jenkins_home/tools/nodejs/NodeJS26.5
# 删除任务工作区缓存
rm -rf /var/jenkins_home/workspace/你的任务名
  1. 回到全局工具,新建低版本 Node(20LTS),任务配置保存后重建,会自动下载全新安装包。

3. 勾选了缓存 npm,旧环境变量残留

截图中 Cache location 开启默认缓存,旧 node 的 PATH 缓存会残留: 临时解决:构建步骤最开头手动清空 npm 缓存

复制代码
npm cache clean --force

二、从节点 Slave Agent 场景(容易忽略)

如果构建不在主节点运行:

  1. Slave 节点的 tools 目录独立,全局工具修改后主节点生效,但从节点不会自动同步;
  2. Slave 会保留旧版本 Node 安装包,不会主动重新拉取; 修复:
  • 登录 Slave 机器,删除对应 node 工具目录
  • 重启 Slave 代理连接,再重新构建任务

三、Pipeline 流水线特殊规则(若你后续用 Jenkinsfile)

  1. tools {nodejs 'xxx'} 名称写错 / 没同步修改,不会加载新全局工具;
  2. Pipeline 缓存:修改 Jenkinsfile 后,需要重新扫描流水线 / 重建,旧流水线缓存不会自动刷新工具。

四、Jenkins 服务缓存兜底修复(全部无效时执行)

  1. 重启 Jenkins 服务,清空全局工具内存缓存
bash 复制代码
# CentOS/Anolis
systemctl restart jenkins
  1. 重启完成后,打开任务配置保存一次,再构建。

五、针对你当前场景最简操作步骤(直接照做)

  1. 全局工具配置删除 NodeJS26.5,新建 Node20.x LTS;
  2. 进入你的任务配置页面,下拉框选择新的 Node20 工具,拉到底部点【保存】;
  3. 服务器删除旧损坏工具目录:rm -rf /var/jenkins_home/tools/nodejs/NodeJS26.5;
  4. 重新执行构建,此时会自动下载全新无依赖问题的 Node20。

补充关键点

全局工具只是工具仓库定义,每个任务会单独缓存绑定关系、工具安装包;

  • 修改全局工具 ≠ 自动更新所有任务的环境;
  • 必须任务配置保存 + 清理旧工具本地文件 双操作才能刷新。
相关推荐
Canmag 兴隆磁性21 分钟前
中大型钕铁硼产品的磁通测量与自动分选:一条产线自动化的工程实现思路
运维·学习·自动化·永磁材料
xuefeiniao2 小时前
PHP2Shell漏洞修复
运维·服务器·php
便利店10243 小时前
系统活动一抓留存!深入 Linux C/C++ 调试工具之 sysdig
linux·运维·服务器·sysdig
智能运维指南4 小时前
企业 IT 运维自动化平台怎么选?从场景匹配到 POC 验证的完整评估框架
运维·自动化·自动化运维·嘉为蓝鲸
toooooop85 小时前
CentOS 7 内核 3.10.0-1160.119.1 升级指南
linux·运维·centos
云飞云共享云桌面5 小时前
广东东莞制造工厂10人共享一台三维设计服务器
运维·服务器·3d·自动化·制造
kkkkkkkkkk_Z6 小时前
新手自学嵌入式 | 学习日记:Linux驱动复习之系统移植(U-Boot篇)
linux·运维·学习
hz567896 小时前
企业视频会议系统方案:总部与分支机构高效协同如何落地?
运维·服务器·网络·安全·实时音视频·信息与通信
sun153690275727 小时前
露天矿边坡滑坡怎么预警?QY-19GNSS 自动化地表位移监测系统介绍
运维·安全·自动化