【问题标题】:Problems with Hudson CI and FindBugs/Static Analysis pluginHudson CI 和 FindBugs/Static Analysis 插件的问题
【发布时间】:2012-05-05 10:02:20
【问题描述】:

我安装了 Hudson v2.20。我正在尝试安装 FindBugs 插件,但是当 Hudson 在下载插件后重新启动时,插件无法加载并出现以下错误。有没有其他人看过这个?如果是这样,我将如何解决?

我使用 Hudson 插件界面安装了插件。我的猜测是该插件由于某种原因与 Hudson 版本不兼容?

hudson.util.IOException2: Failed to load plugin instance for: analysis-core
    at org.hudsonci.inject.internal.plugin.SmoothiePluginStrategy.load(SmoothiePluginStrategy.java:193)
    at org.hudsonci.inject.internal.plugin.DelegatingPluginStrategy.load(DelegatingPluginStrategy.java:72)
    at hudson.PluginManager$2$1$1.run(PluginManager.java:297)
    at org.jvnet.hudson.reactor.TaskGraphBuilder$TaskImpl.run(TaskGraphBuilder.java:146)
    at org.jvnet.hudson.reactor.Reactor.runTask(Reactor.java:259)
    at hudson.model.Hudson$4.runTask(Hudson.java:698)
    at org.jvnet.hudson.reactor.Reactor$2.run(Reactor.java:187)
    at org.jvnet.hudson.reactor.Reactor$Node.run(Reactor.java:94)
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
    at java.lang.Thread.run(Thread.java:662)
Caused by: java.lang.LinkageError: loader (instance of  org/hudsonci/inject/internal/plugin/PluginClassLoader): attempted  duplicate class definition for name: "org/apache/xerces/parsers/SAXParser"
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClassCond(ClassLoader.java:631)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:615)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:465)
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:139)
    at org.aspectj.weaver.bcel.ExtensibleURLClassLoader.defineClass(ExtensibleURLClassLoader.java:63)
    at org.aspectj.weaver.loadtime.WeavingURLClassLoader.defineClass(WeavingURLClassLoader.java:151)
    at org.aspectj.weaver.bcel.ExtensibleURLClassLoader.defineClass(ExtensibleURLClassLoader.java:97)
    at org.aspectj.weaver.bcel.ExtensibleURLClassLoader.findClass(ExtensibleURLClassLoader.java:52)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
    at hudson.ClassicPluginStrategy$DependencyClassLoader.findClass(ClassicPluginStrategy.java:426)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:295)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
    at org.xml.sax.helpers.NewInstance.newInstance(NewInstance.java:49)
    at org.xml.sax.helpers.XMLReaderFactory.loadClass(XMLReaderFactory.java:187)
    at org.xml.sax.helpers.XMLReaderFactory.createXMLReader(XMLReaderFactory.java:150)
    at org.aspectj.weaver.loadtime.definition.DocumentParser.getXMLReader(DocumentParser.java:167)
    at org.aspectj.weaver.loadtime.definition.DocumentParser.saxParsing(DocumentParser.java:137)
    at org.aspectj.weaver.loadtime.definition.DocumentParser.parse(DocumentParser.java:117)
    at org.aspectj.weaver.loadtime.ClassLoaderWeavingAdaptor.parseDefinitions(ClassLoaderWeavingAdaptor.java:258)
    at org.aspectj.weaver.loadtime.DefaultWeavingContext.getDefinitions(DefaultWeavingContext.java:130)
    at org.aspectj.weaver.loadtime.ClassLoaderWeavingAdaptor.initialize(ClassLoaderWeavingAdaptor.java:161)
    at org.aspectj.weaver.loadtime.WeavingURLClassLoader.createAdaptor(WeavingURLClassLoader.java:171)
    at org.aspectj.weaver.loadtime.WeavingURLClassLoader.defineClass(WeavingURLClassLoader.java:132)
    at org.aspectj.weaver.bcel.ExtensibleURLClassLoader.defineClass(ExtensibleURLClassLoader.java:97)
    at org.aspectj.weaver.bcel.ExtensibleURLClassLoader.findClass(ExtensibleURLClassLoader.java:52)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
    at org.hudsonci.inject.internal.plugin.SmoothiePluginStrategy.loadPluginClass(SmoothiePluginStrategy.java:217)
    at org.hudsonci.inject.internal.plugin.SmoothiePluginStrategy.load(SmoothiePluginStrategy.java:188)
    ... 10 more

【问题讨论】:

  • 看起来真的像这样: 引起:java.lang.LinkageError: loader (org/hudsonci/inject/internal/plugin/PluginClassLoader 的实例): 尝试重复的类定义名称:“org/ apache/xerces/parsers/SAXParser"。
  • 嗨 khmarbaise。我的问题更多是为什么会发生异常。我是最新的 Hudson 版本,并使用它的插件管理器安装 FindBugs,所以看起来 Hudson 坏了。我想知道其他人是否有这个问题并解决了它。

标签: java maven hudson maven-3 hudson-plugins


【解决方案1】:

在我的一位同事的建议下,我安装了Jenkins。一切都是第一次工作,没有错误。我猜社区已经转向 Jenkins,一旦甲骨文将其交给 Eclipse 基金会,就没有人会费心回到 hudson。

【讨论】:

    【解决方案2】:

    很抱歉给您带来了不好的体验。该插件是插件所有者指定为与 Hudson 和 Jenkins [1] 兼容的众多插件之一。不幸的是,Jenkins 似乎通过更改其 maven-plugin 打破了这种兼容性,这是该插件直接依赖的核心的一部分。 Hudson 已暂时恢复到静态分析的早期版本,现在将直接分叉和维护它和相关插件。

    Hudson 一直在努力保持两个系统之间的兼容性,并添加了新功能,例如 Sonatype 的 Maven 3 集成和 Cascading 项目功能,以及在过去一年中提高了性能和稳定性。这些没有反映在 Jenkins 中。

    Hudson 是 Eclipse 的里程碑版本,由于完成 Eclipse 的 IP 和出处检查(以及相关的代码和库清理)的艰巨任务即将完成,因此将于 6 月全面发布。您可以在博客或 Eclipse 站点 [2] 上阅读更多相关信息。它仍在蓬勃发展,而 Hudson 的用户社区并没有全部向前发展。

    [1]http://wiki.hudson-ci.org/display/HUDSON/Plugins#Plugins-tier3

    [2]http://www.eclipse.org/hudson

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-07
      • 2010-12-09
      • 1970-01-01
      • 1970-01-01
      • 2010-10-04
      • 1970-01-01
      相关资源
      最近更新 更多