# Jenkins 2.346.1 **Repository Path**: lvbee/jenkins-2.346.1 ## Basic Information - **Project Name**: Jenkins 2.346.1 - **Description**: 记录一次删除.jenkins目录的修复过程(完整离线部署Jenkins 2.346.1含兼容插件包) 还有一些配置的简单示例~ - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-11-21 - **Last Updated**: 2025-11-21 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Jenkins 2.346.1 #### 介绍 记录一次删除.jenkins目录的修复过程(完整离线部署Jenkins 2.346.1含兼容插件包) 还有一些配置的简单示例~ 博文链接[https://blog.csdn.net/qq_26599807/article/details/155062197](https://blog.csdn.net/qq_26599807/article/details/155062197) --- # 一、前言 > 本次过程将分享Linux完整离线部署Jenkins 2.346.1的过程,以及Ant的安装、插件的安装、项目的配置~ > 一台Linux系统(装有jdk1.7或jdk1.8)+能访问网络的电脑 # 二、背景 > 最近在开发一个新项目,需要新建一个项目来构建,一系列配置后,构建发现报错了,貌似是找不到什么路径。 > 由于当时不太了解Jenkins,也没有啥防备心理,看到有个Local module directory配置是点(就是.),然后就改成了../../,也算是脑子发热了,就保存构建了,结果整个.jenkins目录都被删除/重置干净了~(此应该是Jenkins使用SVN时,会先清除目录,再更新数据) > 这下好了,Jenkins彻底崩盘了~ > 页面乱了不说,视图、项目也不见了,新建一个时,由于没插件了,编辑页都是残缺的...... # 三、介绍 Jenkins是一个开源的自动化部署工具,它能够持续地自动化构建、测试和部署软件项目。Jenkins通常用于构建、测试和部署Web应用程序,但也可以用于构建和测试其他类型的软件。 Jenkins提供了一个可扩展的插件系统,使得它可以轻松地与其他工具和技术集成。它支持各种版本控制系统(如Git、SVN等)、构建工具(如Maven、Gradle等)以及测试框架(如JUnit、Selenium等)。通过使用这些插件,Jenkins能够自动执行构建、测试和部署操作,并提供详细的报告和日志信息,方便开发人员跟踪和分析项目的状态和问题。 Jenkins还具有强大的可配置性和灵活性,使得它能够满足各种不同的需求和工作流程。它可以在本地计算机、服务器、Docker容器等各种环境中运行,也可以在云端进行部署和管理。 # 四、过程 经翻阅各种资料,询问各个AI,有说找个国内平替,有说安装个最新版。由于环境限制,查看了官网介绍,最终选择了安装对现有环境要求兼容性最好的Jenkins 2.346.1。 [官网地址:https://www.jenkins.io/](https://www.jenkins.io/) ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/46d5e6a1c6ee4e6584628927e104c1b8.png) [文档地址](https://www.jenkins.io/doc/book/platform-information/support-policy-java/#running-jenkins-system) ``-(如果您安装不受支持的 Java 版本,您的 Jenkins 控制器将无法运行。)`` 由此,可以看到,Jenkins 2.346.1是Jenkins LTS(长期支持版)的一个版本,发布于2022年6月28日,是支持Java 8的最后一个版本。后续版本(如2.346.3及更高)已移除对Java 8的支持 。 选择LTS版是因为官网说基础版更新比较频繁,而LTS更新频率低、稳定性高‌,适合需要长期稳定运行的场景。 [官网下载页:https://www.jenkins.io/download/](https://www.jenkins.io/download/) --选择Stable (LTS) ,Past Releases。 ## 1、文件下载 [LTS更多版本:https://get.jenkins.io/war-stable/](https://get.jenkins.io/war-stable/) --Ctrl+F查找并选择2.346.1。 [LTS的2.346.1版本:https://get.jenkins.io/war-stable/2.346.1/](https://get.jenkins.io/war-stable/2.346.1/) [LTS的2.346.1版本:https://mirror.twds.com.tw/jenkins/war-stable/2.346.1/jenkins.war](LTS的2.346.1版本:https://mirror.twds.com.tw/jenkins/war-stable/2.346.1/jenkins.war) [附:网盘下载:https://pan.baidu.com/s/5eVfiR3O0aDU43mVE72rYkA]( https://pan.baidu.com/s/5eVfiR3O0aDU43mVE72rYkA) [附:华为镜像下载:https://mirrors.huaweicloud.com/jenkins/war-stable/2.346.1/jenkins.war]( https://mirrors.huaweicloud.com/jenkins/war-stable/2.346.1/jenkins.war) --注意是war-stable ## 2、下载和安装Tomcat 运行Jenkins主要有三种常见方式:‌WAR包启动‌、‌Docker启动‌和‌Tomcat启动‌。 以下是做简单说明: - WAR包启动 下载Jenkins的WAR包,执行命令:java -jar jenkins.war(需提前安装Java环境) 访问http://localhost:8080 查看管理页面 - Docker启动 拉取Jenkins镜像:docker pull jenkins/jenkins 运行容器:docker run -p 8080:8080 jenkins/jenkins 通过http://localhost:8080访问 - Tomcat启动 将WAR包复制到Tomcat的webapps目录 修改server.xml配置端口号(默认8080) 启动Tomcat后访问http://localhost:8080/jenkins 可参考 [Jenkins的三种启动方式](https://blog.csdn.net/lb245557472/article/details/85261734) 个人是建议用容器启动的,因为有容器可控制其端口号,启动参数,以及运行日志,还有方便启停。所以这里使用Tomcat配置Jenkins。 [Tomcat官网:https://tomcat.apache.org/](https://tomcat.apache.org/) 官网推荐下载Tomcat9.x+,其zip下载:[https://dlcdn.apache.org/tomcat/tomcat-9/v9.0.112/bin/apache-tomcat-9.0.112.zip](https://dlcdn.apache.org/tomcat/tomcat-9/v9.0.112/bin/apache-tomcat-9.0.112.zip) 将其移动并解压到Linux服务器,例如:/data/tomcat_jenkins/ 修改``tomcat_jenkins/conf/server.xml``文件,其中: ```xml ``` ## 3、部署Jenkins并启动 将对应版本的 ``jenkins.jar`` 复制到 ``tomcat_jenkins/webapps/`` 下面,然后进入bin目录执行start.sh启动Tomcat。 ```shell cd tomcat_jenkins/webapps/ cp xx/jenkins.jar ./ cd ../bin/ chmod +x *.sh sh start.sh # sh restart.sh ``` 使用restart.sh的,请访问 [快捷重启Tomcat的部署命令sh文件restart.sh-超好用超实用](https://lvbee.blog.csdn.net/article/details/136666615) 启动后,在浏览器访问 ip:8081/jenkins,例如:``http://192.168.10.111:8081/jenkins`` 这里可能会触发初次加载token校验,以及插件选择。token校验按文字做即可,插件选择建议跳过。 ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/4c4fbef89f1e4bc9be0b4e922df6f9d3.png =x210) ## 4、插件安装 我这里是经过AI提醒,可以选择离线安装: - 离线/内网场景 在有外网的同版本环境中先下载所需插件(或导出已安装插件目录),再拷贝到内网 Jenkins 的 JENKINS_HOME/plugins,重启即可使用; 或准备离线包(war/plugins/凭证配置等),在内网直接恢复,避免外网请求 由于外网限制(翻墙),版本兼容性,失效镜像,还有插件校验...... 在此我已试过官方安装,镜像安装,本地安装,都未成功~ 而且插件依赖插件,一手拉一手,已经近百个插件需要安装...... 使用“离线插件包集合”(别人整理好的兼容包,一键上传) 有人已经为 Jenkins 2.346.1 或类似老版本整理好了一整套“兼容的插件包”(.hpi 文件集合),你只需要下载并上传这些包,就能让大部分常用插件正常工作,无需自己一个个找版本 故使用上述``离线安装方法``,搜索“``Jenkins2.346.1兼容插件包``”,发现网络上果然有相关plugins下载,哈哈哈~ 在这提供几个下载,实测有效,仅限 Jenkins 2.346.1~ [原:Jenkins 2.346.1插件 5星 214.28MB](https://download.csdn.net/download/qq_33935672/89791461) [我的博客:Jenkins 2.346.1插件](https://download.csdn.net/download/qq_26599807/92368381) [附:网盘下载:https://pan.baidu.com/s/5eVfiR3O0aDU43mVE72rYkA]( https://pan.baidu.com/s/5eVfiR3O0aDU43mVE72rYkA) 将plugins解压到Jenkins默认工作空间,一般是`` $user/.jenkins/ ``,放在其plugins目录下: ```shell cd $user/.jenkins/plugins/ cp xxx/plugins.zip ./ unzip plugins.zip ``` 重启Jenkins所在Tomcat即可。 - 一般情况下,是`` $user/.jenkins/ ``,例如Windows系统是C:/.jenkins; - 可以进入管理页面http://xxxx:8081/jenkins/configure查看工作空间路径。 插件安装理念:了解Jenkins发布年限(例如2022年),安装兼容插件时选择该年限以前的最新版(例如2021年12月)发布的插件。 插件安装理念:了解Jenkins发布年限(例如2022年),安装兼容插件时选择该年限以前的最新版(例如2021年12月)发布的插件。 插件安装理念:了解Jenkins发布年限(例如2022年),安装兼容插件时选择该年限以前的最新版(例如2021年12月)发布的插件。 ## 5、汉化 汉化主要是指Jenkins的HTML页面进行汉化处理。该功能主要通过插件来实现,由localization-support和localization-zh-cn,已包含在插件包中。 ## 6、配置环境变量 ```shell vim /etc/profile # Java 环境变量(如果尚未配置) export JAVA_HOME=/data/jvm/jdk1.8.222 # 请根据你的 JDK 路径修改 # Maven 环境变量 export MAVEN_HOME=/data/apache-maven-3.9.6 export PATH=$MAVEN_HOME/bin:$PATH # Ant 环境变量 export ANT_HOME=/data/apache-ant-1.10.12 export PATH=$ANT_HOME/bin:$PATH # (可选)Jenkins 数据目录(通常不需要加入 PATH) export JENKINS_HOME=/var/lib/jenkins # 默认路径,根据你的实际 Jenkins 数据目录修改 source /etc/profile ``` - ``$PATH=$MAVEN_HOME/bin:$ANT_HOME/bin:$PATH`` 的作用是将 Maven 和 Ant 的可执行文件目录加入到系统的 PATH 中,这样你就可以在任意目录下直接运行 mvn和 ant命令。 - JENKINS_HOME通常只是告诉 Jenkins 或系统“数据存放在哪里”,它本身不是一个可执行程序,所以一般不需要加到 PATH​ 中。 ## 7、安装Maven 使用Jenkins构建Maven项目时,需要依赖Maven系统插件,故需要在系统中安装Maven,步骤和ant很类似,这里略过~ [官网:https://maven.apache.org/](https://maven.apache.org/) [官网下载地址:https://maven.apache.org/download.cgi](https://maven.apache.org/download.cgi) ## 8、安装Ant 使用Jenkins构建一般java项目时,比如copy了jsp文件,将.java通过javac编译成.class文件,zip到升级包等,需要安装ant系统插件。 [官网:https://ant.apache.org/](https://ant.apache.org/) [官网下载地址:https://ant.apache.org/bindownload.cgi](https://ant.apache.org/bindownload.cgi) [网盘下载:https://pan.baidu.com/s/5rXvGRnFSZblakC9MMvI39w ]( https://pan.baidu.com/s/5rXvGRnFSZblakC9MMvI39w ) [华为镜像 Ant1.9下载 apache-ant-1.9.16-bin.tar.gz](https://mirrors.huaweicloud.com/apache/ant/binaries/apache-ant-1.9.16-bin.tar.gz) Apache Ant 是一个用 Java​ 编写的命令行构建工具与库,以构建文件中的 target​ 与 task​ 组织流程,常用于 Java 应用的编译、测试、打包与部署,也可驱动非 Java 任务(如 C/C++)。Ant 不强制项目目录规范,可通过编写自定义任务或引入 antlibs​ 扩展能力;与 Apache Ivy​ 搭配可实现依赖管理。Ant 是 Apache 软件基金会项目 值得注意的是,由于Apache Ant 本身就是用 Java​ 编写的,所以如果你要构建jdk1.7的项目,或者说你的线上运行环境是jdk1.7的,需要下载ant1.9.x版本才行,否则会报错,这里下载的是``apache-ant-1.9.16-bin.tar.gz``版本~ - 版本线对比(运行时 JDK 要求): 1.10.x:要求 Java 8 及以上,支持到当前最新的 Java 22;且 1.9.x​ 系列已 EOL,官方建议使用 1.10.x。 1.9.x:要求 Java 5 及以上(已 EOL)。 1.8.x:要求 Java 1.4 及以上。 1.7.x:要求 Java 1.3 及以上。 还有,Linux一般不支持直接解压.gz,所以本地环境解压并压缩为.zip再上传~ 下载后移动解压到服务器目录,例如: ```shell cd /data/ mkdir ant cd ant unzip -oq xxx/apache-ant-1.xxx-bin.zip chmod +x /ant/bin/ant # 这步不可少,赋予可执行权限~ ``` 看上文,配置ANT_HOME环境变量,执行``ant -version``命令进行校验,maven同理。 ## 9、配置jkd、ant等系统插件 要为Jenkins指定构建中有哪些jdk,ant,maven等,所以需要做一些配置。 浏览器web访问http://xxx:8081/jenkins/configureTools/ ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/56aa2844bd214dd7a747e38bc682c34e.png) 自行本地安装的,所以不要勾选Install automatically哦! 包括【Maven 配置】、【JDK】、【Git】、【Gradle】、【Ant】、【Maven】等。 这里安装的SVN账号会在创建项目时添加~ ## 10、项目配置(构建) 以上步骤都准备好后,重启一下Tomcat_jenkins,并刷新web端,然后新建【Freestyle project】, 示例图: [https://gitee.com/lvbee/jenkins-2.346.1](https://gitee.com/lvbee/jenkins-2.346.1) # 五,一些问题与链接分享 ### 1、gitee分享 [https://gitee.com/lvbee/jenkins-2.346.1/](https://gitee.com/lvbee/jenkins-2.346.1/) ### 2、Ant和jdk版本对不上时? Ant和jdk版本对不上时,会报: ``` Error occurred during initialization of VM java.lang.UnsupportedClassVersionError: allow : Unsupported major.minor version 52.0 ``` AI点醒你:你使用的 Ant 二进制版本(/home/howang/ant/bin/ant)本身是使用 Java 8 编译的! 即:你当前调用的 /data/ant/bin/ant,这个 Ant 本身可能是用 Java 8 或更高版本编译出来的,因此当你在 Java 7 上运行它时,JVM 启动过程中要加载 Ant 内部的某些类(比如 allow或其他核心类),但这些类是 Java 8 编译的(版本号 52.0),Java 7 不认识,于是崩溃。 由于Apache Ant 本身就是用 Java​ 编写的,所以如果你要构建jdk1.7的项目,或者说你的线上运行环境是jdk1.7的,需要下载ant1.9.x版本。 ### 3、崩盘修复过程中遇到的问题 - jenkins中,对svn的配置,Ignore externals 和 Cancel process on externals fail是什么意思?有什么作用? 忽略外部引用 和 外部引用失败时取消构建过程 - 如何设置同时构建的项目数量? - 插件检查签名怎么办?如何关闭? 在Tomcat_jenkins的catalina.sh文件中,添加``JAVA_OPTS=' -Dhudson.model.DownloadService.noSignatureCheck=true'``,其中空格和横杠是分割符,这段代码称为Tomcat 的启动环境变量配置。 该功能禁用插件下载时的签名检查。⚠️ 注意安全风险:这意味着 Jenkins/Hudson 将允许安装未经签名的插件,可能存在安全漏洞。仅建议在测试或信任的环境中使用。 - linux配置JENKINS_HOME的推荐配置 - 如何将 GC(垃圾回收)的日志输出到指定文件? 在Tomcat_jenkins的catalina.sh文件中,添加``JAVA_OPTS='-Xloggc:/data/tomcat_xxx/gc.log'`` - 安装了插件后报错了,如何通过linux后台删除该插件? 你 无法通过 Jenkins 的 Web 界面(GUI)管理插件(比如页面打不开或插件管理页报错); 进入JENKINS_HOME/plugins/ 直接删除指定插件,然后重启tomcat - admin账号的密码在哪里改? 请移步博文:[https://blog.csdn.net/qq_26599807/article/details/155108615](https://blog.csdn.net/qq_26599807/article/details/155108615) - 插件不兼容会怎么提示? ```xml SCM API Plugin (696.v778d637b_a_762) Jenkins (2.426.3) or higher required ``` 插件之间有依赖链,逐个挑版本容易漏、容易冲突,希望有“批量适配”或“整体兼容”的方案 使用“离线插件包集合”(别人整理好的兼容包,一键上传) - Jenkins构建项目时,如何指定jdk版本? 最直接的办法是,使用java -version查看,并修改对应JAVA_HOME 查看当前 $JAVA_HOME的值:``echo $JAVA_HOME`` # 六,结束 . ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/97ae9800ae174e4db129406d131e1b42.png#pic_center =x160) --- 博文链接[https://blog.csdn.net/qq_26599807/article/details/155062197](https://blog.csdn.net/qq_26599807/article/details/155062197) #### 特技 1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md 2. Gitee 官方博客 [blog.gitee.com](https://blog.gitee.com) 3. 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解 Gitee 上的优秀开源项目 4. [GVP](https://gitee.com/gvp) 全称是 Gitee 最有价值开源项目,是综合评定出的优秀开源项目 5. Gitee 官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help) 6. Gitee 封面人物是一档用来展示 Gitee 会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)