java - Hudson - 清理旧插件数据

标签 java plugins hudson unmarshalling

我编写了一些 Hudson 插件,这些插件在字段和类名方面发生了一些变化(重构主要是为了清理代码)。一般来说,一切正常,但启动时,Hudson 会在构建 xml 中解码以前的插件数据。

我们大多数人都知道谁做过 Hudson 插件,Hudson 将使用camel-xstream(或类似的工具),Hudson 将通过将对象的类、状态和字段编码到 build.xml 文件来持久保存 Java 对象。如果对象发生更改并且字段名称发生更改或删除,则会引发类似于“无法找到字段 x,因为它不存在”的异常

我的问题是 - 有没有办法清理该插件数据,以便当我安装新版本的插件时,旧信息不会被保留,也不会导致抛出这些解码异常?

谢谢

最佳答案

在研究了我试图解决的问题之后,我发现 Hudson 实际上已经内置了一个解决方案。

为了解决启动问题,您可以执行以下操作:

  1. 转到管理 Hudson 链接
  2. 如果无法解码对象 链接出现在页面顶部 上面写着
    • “您有以旧格式存储的数据和/或不可读的数据。”
  3. 点击管理按钮
  4. 将会有所有失败的列表
    • 放弃无法访问的数据按钮

关于java - Hudson - 清理旧插件数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4648480/

相关文章:

java - 我应该使用操作系统套接字缓冲区作为消息队列吗?

两个事件之间的 Java 堆分析

plugins - 从stark-security升级到Spring Security插件

javascript - 如何编写通用的 javascript 插件

git - 比特桶+ Jenkins : Trigger build only when specific branch is changed

python - 使用Python在Hudson中配置 "execute shell"脚本

java - hibernate OGM在分片环境中支持mongodb吗?

java - 正则表达式使用java获取第一个斜杠后的所有字符

plugins - 无法在 Windows 8.1 中的 vagrant 中安装插件主机管理器

java - 批量重命名 Hudson 作业