
简介这份资源是面向 Jenkins 2.319.1 版本整理的全套插件压缩包主要服务于正在搭建或维护 CI/CD 流水线的运维工程师、测试人员与后端开发者。对于内网离线环境或插件下载受限的场景它能一次性补齐 Jenkins 所需的核心插件省去逐个在线检索与版本匹配的麻烦降低因插件缺失导致构建失败的概率。压缩包为 zip 格式整体约 264.81MB内含插件文件覆盖持续集成、自动化部署、源码管理、构建触发与通知等常见能力模块可直接放入插件目录完成批量安装。目前已有 940 人学习下载说明该版本组合在社区中具备一定参考价值。借助这份插件集合读者能够快速完成 Jenkins 基础能力配置减少环境搭建阶段的试错成本把精力集中到流水线设计与自动化部署实践上适合需要稳定复现构建环境的中高级使用者。1. 从一次插件不兼容的翻车说起Jenkins 2.319.1 环境搭建上周帮一个朋友排查 CI 流水线页面报了一堆NoSuchMethodError日志翻到最底下才发现是插件版本和 Jenkins 核心对不上。他装的是最新版 Jenkins插件却从旧环境直接拷过来结果整个构建队列卡死连登录都进不去。这种翻车在 Jenkins 2.319.1 上尤其常见——这个版本属于 LTS 分支里比较稳的一档很多公司内网还在跑但插件生态更新快稍不注意就踩版本坑。如果你正准备搭一套 Jenkins 自动化部署环境或者手头有台老机器要重装这篇笔记就是按「装什么版本、怎么装、怎么配、坏了怎么救」的顺序整理的。整套流程我在测试机上走过三遍下面每一步都带命令和参数说明照着做能跑通。2. 装前定版本Jenkins 2.319.1 与 JDK 的搭配选择2.1 为什么锁死 2.319.1 而不是追新Jenkins 每周发版但生产环境我一般只跟 LTS。2.319.1 是 LTS 线里一个长期被验证过的版本配套插件生态成熟社区里能搜到的报错方案也多。追最新版看着爽但插件作者适配往往滞后两三周中间这段时间流水线就是黑匣子。另一个现实原因是很多公司内网镜像源只同步到某个 LTS 版本你装最新版反而拉不到依赖。所以第一步不是急着下载而是先确认目标机器上有没有 JDK以及 JDK 版本能不能撑住 2.319.1。2.2 JDK 版本对照与安装Jenkins 2.319.1 官方要求 JDK 8 或 JDK 11JDK 17 在这个版本上跑会出UnsupportedClassVersionError。我一般选 JDK 11因为 8 太老、17 太新11 是中间最稳的。下面以 CentOS 7 为例装 OpenJDK 11# 查看系统是否已有 JDK java -version # 安装 OpenJDK 11CentOS 7 默认源里可能没有先装 EPEL yum install -y epel-release yum install -y java-11-openjdk java-11-openjdk-devel # 确认安装路径后面配 Jenkins 要用 readlink -f $(which java)java-11-openjdk是运行时java-11-openjdk-devel带编译工具Jenkins 本身不需要编译但有些插件在构建时会调javac所以一起装上省事。readlink -f那行是查真实路径输出类似/usr/lib/jvm/java-11-openjdk-11.0.xx/bin/java记下/usr/lib/jvm/java-11-openjdk-11.0.xx这一段后面写进 Jenkins 的启动配置。提示如果机器上已经有 JDK 8不用卸载用alternatives --config java切换默认版本即可Jenkins 启动脚本里也可以单独指定JAVA_HOME。2.3 系统资源与端口预检Jenkins 默认跑在 8080 端口内存建议至少 2GB低于这个数构建大项目时容易 OOM。装之前先看两样东西# 看内存 free -h # 看 8080 是否被占用 ss -tlnp | grep 8080如果 8080 被占要么改 Jenkins 端口要么把占用进程挪走。改端口在启动参数里加--httpPort9090就行后面第 3 章会写具体位置。内存这块free -h里 available 低于 1.5G 的话建议先加内存或者把 Jenkins 的 JVM 堆调小堆参数在/etc/sysconfig/jenkins里改。3. 安装 Jenkins 2.319.1仓库配置与 war 包两种方式3.1 用 yum 仓库安装推荐官方仓库方式最省心升级和卸载都干净。先导入密钥、加仓库文件# 导入 Jenkins 仓库 GPG 密钥 wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key # 查看仓库里有哪些版本 yum list jenkins --showduplicates | grep 2.319--showduplicates会列出所有可用版本找到jenkins-2.319.1-1.1这种格式的条目。然后指定版本安装yum install -y jenkins-2.319.1-1.1.noarch装完 systemd 会注册一个jenkins服务但先别急着启动还要改配置。配置文件在/etc/sysconfig/jenkins用编辑器打开重点改三处# 监听端口默认 8080被占就改 JENKINS_PORT8080 # Java 路径指向前面查到的 JDK 11 JENKINS_JAVA_CMD/usr/lib/jvm/java-11-openjdk-11.0.xx/bin/java # JVM 堆参数2G 内存机器给 512m 起步 JENKINS_JAVA_OPTS-Djava.awt.headlesstrue -Xmx512m -Xms256mJENKINS_JAVA_CMD不写的话Jenkins 会去调系统默认java如果默认是 JDK 8 也能跑但为了和插件兼容性一致我一般显式指到 11。-Xmx512m是最大堆-Xms256m是初始堆小内存机器别设太大否则启动就报Cannot allocate memory。3.2 war 包方式安装适合离线环境内网机器连不上外网仓库时war 包是唯一选择。从能上网的机器下载jenkins.war版本号认准 2.319.1# 在能上网的机器上下载 wget https://get.jenkins.io/war-stable/2.319.1/jenkins.war # 传到目标机器后直接 java -jar 启动 nohup java -jar jenkins.war --httpPort8080 jenkins.log 21 --httpPort指定端口nohup加让它在后台跑日志重定向到jenkins.log。这种方式没有 systemd 管理重启机器后要手动再拉起来所以生产环境我还是倾向 yum 装。war 包方式的好处是版本绝对可控不会因为仓库更新被意外升级。3.3 启动服务与初始密码获取yum 方式装完后启动systemctl start jenkins systemctl enable jenkins systemctl status jenkinsenable是设开机自启status看运行状态绿色active (running)就对了。如果起不来先看/var/log/jenkins/jenkins.log九成是 JDK 路径写错或者端口被占。启动成功后初始管理员密码在cat /var/lib/jenkins/secrets/initialAdminPassword这串密码在浏览器首次访问http://机器IP:8080时输入。注意这个文件只有 Jenkins 首次启动前存在装完插件后会被清掉所以拿到密码先存到密码管理器里。4. 插件配置适配 2.319.1 的核心插件清单与安装4.1 插件管理入口与离线安装浏览器进 Jenkins 后先选「安装推荐的插件」这一步会拉一批基础插件。但推荐列表里的版本不一定适配 2.319.1所以装完还要手动核对。插件管理在「系统管理 → 插件管理 → 可选插件」搜索框输入插件名即可。离线环境用「高级 → 上传插件」把.hpi文件传上去。插件版本适配有个笨办法但很管用去插件官网看每个插件的「Required Core」字段只要它写的核心版本 ≤ 2.319.1就能装。反过来如果某个插件要求核心 2.400在 2.319.1 上装了一定报错。4.2 自动化部署必备插件清单下面这张表是我在 2.319.1 上跑自动化部署时必装的插件版本号是实测能兼容的插件名称作用兼容版本Git plugin拉取 Git 仓库代码4.11.5Pipeline流水线核心2.6Credentials Binding凭据绑定到环境变量1.28SSH Agent通过 SSH 部署到远程1.24Publish Over SSH文件传输到远程1.24Build Timestamp构建时间戳1.11装的时候在可选插件里逐个搜勾选后点「Install without restart」。如果一次装太多Jenkins 可能卡在「正在安装」这时候刷新页面看进度别重复点。4.3 插件安装后的重启与验证装完插件后Jenkins 会提示重启。重启命令systemctl restart jenkins重启后进「插件管理 → 已安装」看有没有插件标红报错。标红一般是依赖缺失点插件名进去看详情它会告诉你缺哪个依赖按提示补装即可。另一个验证方法是新建一个自由风格任务在「源码管理」里看能不能选到 Git能选到说明 Git 插件生效了。注意插件装多了会拖慢 Jenkins 启动速度2.319.1 上我一般控制在 20 个以内用不到的插件及时卸载卸载在「已安装」标签页里点插件名旁边的「Uninstall」。5. 避坑排查Jenkins 2.319.1 装插件时最容易踩的五个坑5.1 坑一插件装完 Jenkins 起不来现象重启后systemctl status jenkins显示failed日志里一堆ClassNotFoundException。原因插件依赖的核心类在 2.319.1 里不存在通常是装了要求更高核心版本的插件。解决进/var/lib/jenkins/plugins目录把最近装的插件目录删掉重启服务。然后按 4.1 的方法核对 Required Core 字段只装兼容版本。5.2 坑二初始密码文件不存在现象cat /var/lib/jenkins/secrets/initialAdminPassword报No such file。原因Jenkins 已经完成过初始化这个文件被自动删除了或者 Jenkins 根本没启动成功文件还没生成。解决先确认服务在跑如果服务正常但文件没了说明之前初始化过。这时候要么用之前设的管理员账号登录要么停掉 Jenkins删掉/var/lib/jenkins下除jobs外的配置重新初始化——但这样会丢配置操作前先备份。5.3 坑三插件下载卡在 0%现象插件安装进度条一直不动日志里Connection timed out。原因默认插件更新中心地址在国内访问不稳定。解决进「系统管理 → 插件管理 → 高级」把「更新站点」的 URL 换成国内镜像源。改完点「立即获取」再回可选插件页搜索安装。离线环境就直接用上传.hpi的方式。5.4 坑四JDK 版本对但插件仍报错现象java -version显示 11但插件日志里报UnsupportedClassVersionError。原因Jenkins 启动时用的不是系统默认java而是/etc/sysconfig/jenkins里JENKINS_JAVA_CMD指定的那个可能指向了 JDK 8。解决打开/etc/sysconfig/jenkins确认JENKINS_JAVA_CMD指向 JDK 11 的绝对路径改完systemctl daemon-reload再重启。5.5 坑五内存不足导致构建中断现象构建跑到一半突然失败日志里java.lang.OutOfMemoryError。原因JVM 堆设太小或者机器物理内存不够。解决调大/etc/sysconfig/jenkins里的JENKINS_JAVA_OPTS把-Xmx提到 1024m 或 2048m同时用free -h确认物理内存够用。如果物理内存实在紧张把构建任务分散到 agent 节点上跑。6. 装完怎么验证从新建任务到流水线跑通装完插件只是第一步真正要确认的是整套自动化部署链路能不能跑通。我一般用一个最小化的流水线任务来验证步骤是新建任务 → 写 Pipeline 脚本 → 执行 → 看日志。下面这个脚本覆盖了拉代码、构建、SSH 部署三个关键环节pipeline { agent any stages { stage(拉取代码) { steps { git branch: main, url: git内网Git地址:group/demo.git, credentialsId: git-ssh-key } } stage(构建) { steps { sh echo 模拟构建实际替换成 mvn 或 npm 命令 } } stage(部署到远程) { steps { sshagent(credentials: [deploy-server-key]) { sh ssh -o StrictHostKeyCheckingno user目标机器 mkdir -p /opt/app echo 部署成功 } } } } }credentialsId对应的是在「凭据管理」里提前加好的 SSH 私钥sshagent会把私钥注入到当前步骤的环境里StrictHostKeyCheckingno是跳过首次连接的指纹确认内网环境用这个参数省事。跑通后控制台输出里会依次出现三个阶段的名字最后一行打印「部署成功」。验证时重点看三处一是「拉取代码」阶段有没有报权限错误报错就去检查凭据里的私钥和 Git 仓库的公钥是否配对二是「构建」阶段的工作目录Jenkins 默认在/var/lib/jenkins/workspace/任务名下确认这个目录有写权限三是「部署到远程」阶段的 SSH 连接如果卡住不动多半是目标机器的防火墙没放行 22 端口。从那以后我每次装完 Jenkins都强制走一遍这个最小流水线不跑通不算装完。因为插件装得再全链路不通就是白搭。希望帮到你。本文还有配套的精品资源点击获取