简体   繁体   English

Hudson CI和FindBugs / Static Analysis插件的问题

[英]Problems with Hudson CI and FindBugs/Static Analysis plugin

I have Hudson v2.20 installed. 我安装了Hudson v2.20。 I am trying to install the FindBugs plugin, but when Hudson restarts after downloading the plugin, the plugin fails to load with the following error below. 我正在尝试安装FindBugs插件,但是当Hudson在下载插件后重新启动时,插件无法加载,并出现以下错误。 Has anyone else seen this? 有没有人见过这个? And if so, how would I solve it? 如果是这样,我该如何解决?

I installed the plugin using the Hudson plugin interface. 我使用Hudson插件界面安装了插件。 My guess is that the plugin is incompatible with the Hudson version for some reason? 我的猜测是插件由于某种原因与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

On the advice of one of my colleagues, I installed Jenkins instead. 根据我的一位同事的建议,我安装了Jenkins Everything worked first time with no errors. 一切都是第一次没有错误。 I guess the community has moved on to Jenkins and noone bothered going back to hudson once Oracle gave it to the eclipse foundation. 我猜这个社区已经转移到了詹金斯身上,一旦甲骨文把它送到日食基金会,没有人会回到哈德森身边。

Sorry you had a bad experience with this. 对不起,你对此有不好的体验。 This plugin is one of many that plugin owners has designated as compatible with both Hudson and Jenkins [1]. 这个插件是插件所有者指定为与Hudson和Jenkins兼容的众多插件之一[1]。 Unfortunately it seems that Jenkins has broken that compatibility through a change to its maven-plugin, part of core, which the plugin directly depends on. 不幸的是,似乎Jenkins通过改变它的maven-plugin来破坏了这种兼容性,这是插件直接依赖的核心部分。 Hudson has temporarily reverted to an earlier version of static analsysis and will now fork and maintain it and the related plugins directly. Hudson暂时恢复到早期版本的静态分析,现在将直接分叉并维护它和相关的插件。

Hudson has worked very hard to maintain compatibility between the two systems as well as adding new functionality like the Maven 3 integration from Sonatype and the Cascading projects feature, as well as improving performance and stability over the last year. Hudson非常努力地保持两个系统之间的兼容性,以及添加Sonatype Mave 3集成和Cascading项目功能等新功能,以及改善去年的性能和稳定性。 These are not reflected in Jenkins. 这些都没有反映在詹金斯身上。

Hudson is in milestone release from Eclipse and will be fully released in June now that the huge task of getting through Eclipse's IP and provenance checks (and the associated code and library cleanup that entailed) is nearing completion. Hudson是Eclipse的里程碑版本,并将于6月完全发布,因为通过Eclipse的IP和来源检查(以及相关的代码和库清理)的巨大任务即将完成。 You can read more about that on the blog or the the Eclipse site [2]. 您可以在博客或Eclipse站点[2]上阅读更多相关信息。 It is still thriving and the Hudson community of users has not all moved on. 它仍然蓬勃发展,哈德森用户社区并没有全部继续前进。

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

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

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM