使用HPE Application Automation Tools插件创建Job时遇序列化安全错误求助
我之前也碰到过这个和HPE Application Automation Tools插件相关的问题——哪怕是空配置保存Job都会触发XStream安全限制报错。给你几个亲测有效的解决方向:
优先更新插件到最新版本
这类错误通常是因为Jenkins的XStream安全机制把插件里的com.microfocus.adm.performancecenter.plugins.common.pcEntities.TimeslotDuration类加入了黑名单,而插件开发者一般会在后续版本里修复这个问题,把该类添加到白名单中。你可以进入Jenkins的「插件管理」页面,找到HPE Application Automation Tools插件,检查并安装最新可用版本,之后重启Jenkins再尝试保存Job。手动配置XStream白名单
如果更新插件后问题依旧,或者没有新版本可用,可以通过添加JVM启动参数来手动把这个类加入白名单:- 找到Jenkins的启动配置文件(比如Windows下的
jenkins.xml,Linux下的启动脚本) - 在JVM参数部分添加:
-Dhudson.model.Descriptor.XSTREAM_WHITELIST=com.microfocus.adm.performancecenter.plugins.common.pcEntities.TimeslotDuration - 重启Jenkins服务,再尝试创建或保存Job
- 找到Jenkins的启动配置文件(比如Windows下的
检查Jenkins与插件的版本兼容性
有时候版本不匹配也会触发这类问题。你可以查看HPE插件的详情页面,确认它支持的Jenkins版本范围,对比你当前使用的Jenkins版本。如果版本不兼容,要么升级Jenkins到兼容版本,要么降级插件到适配你当前Jenkins的版本。临时关闭XStream安全限制(仅测试环境使用)
这个方法绝对不推荐在生产环境使用,因为会大幅降低Jenkins的安全性,但可以作为临时测试手段。在Jenkins的启动参数中添加:-Dhudson.util.XStream2.noBlacklist=true,重启后再尝试操作。测试完成后一定要立即移除这个参数,恢复安全限制。
内容的提问来源于stack exchange,提问作者Zamora1865

