Jenkins中Groovy共享库Kohsuke Github API依赖安装异常排查
Jenkins共享库Kohsuke Github API版本冲突排查要点
以下是可能导致生产环境依赖版本异常的Jenkins配置或环境因素:
GitHub插件内置API版本冲突
Jenkins的GitHub集成插件本身会内置Kohsuke Github API,若插件版本较旧,内置的API版本也会低于你开发时用的1.313。Jenkins类加载器会优先加载插件自带的类,导致你的代码调用的旧版GHRepository没有createTag()方法。可在插件管理页面查看GitHub插件版本,对应确认其内置API版本。全局依赖强制管控
检查Jenkins「全局工具配置」或「系统设置」,是否存在通过依赖管理插件(如Config File Provider)统一指定第三方依赖版本的配置,这类配置可能强制将Kohsuke API锁定到旧版本。共享库打包方式问题
若共享库通过Gradle打包上传,需确认是否使用**shadowJar(胖包)**模式:- 未开启的话,Jenkins会从自身类路径加载依赖,而非你打包的新版本;
- 开启后需检查是否重命名了Kohsuke API的包名,避免和插件自带类冲突。
代理节点类路径污染
如果流水线运行在代理节点上,节点的JENKINS_HOME/plugins目录或系统JVM类路径中可能存在旧版Kohsuke API的JAR,导致节点加载旧类。可登录节点检查相关文件。依赖传递冲突
执行gradle dependencies查看共享库的依赖树,确认是否有其他依赖间接引入了旧版Kohsuke API。若存在,需在build.gradle中用force关键字强制锁定1.313版本。
内容的提问来源于stack exchange,提问作者Timotei Manolache
相关产品推荐
相关产品推荐

