Anonymous

The plugin is not in ZIP format. You should not try to unzip it. The plugin should download as .hpi file (if not, then the web server is not configured correctly). Try to rename the file from .zip to .hpi.
--
Ulli

Anonymous

Hi, I have some problem with running plugin (version 1.18) on my XML file generated by FindBugs. I'm getting this NPE: FATAL: Could not parse FindBugs files. Please check if the file pattern is correct and the latest FindBugs scanner is used (i.e., maven-findbugs-plugin >= 1.1.1) java.lang.NullPointerException at org.apache.commons.digester.Digester.createSAXException(Digester.java:2919) at org.apache.commons.digester.Digester.createSAXException(Digester.java:2945) at org.apache.commons.digester.Digester.endElement(Digester.java:1133) at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(AbstractSAXParser.java:633) at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1241) at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(XMLDocumentFragmentScannerImpl.java:1685) at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:368) at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:834) at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:764) at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:148) at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1242) at org.apache.commons.digester.Digester.parse(Digester.java:1666) at hudson.plugins.findbugs.FindBugsCounter.parseNativeFormat(FindBugsCounter.java:162) at hudson.plugins.findbugs.FindBugsCounter.parse(FindBugsCounter.java:74) at hudson.plugins.findbugs.FindBugsCounter.findBugs(FindBugsCounter.java:222) at hudson.plugins.findbugs.FindBugsPublisher.perform(FindBugsPublisher.java:89) at hudson.model.Build$RunnerImpl.performAllBuildStep(Build.java:150) at hudson.model.Build$RunnerImpl.post2(Build.java:137) at hudson.model.AbstractBuild$AbstractRunner.post(AbstractBuild.java:254) at hudson.model.Run.run(Run.java:673) at hudson.model.Build.run(Build.java:102) at hudson.model.ResourceController.execute(ResourceController.java:70) at hudson.model.Executor.run(Executor.java:64) Thanks for any suggestions, Mike

Anonymous

[sorry for last post, i had some troubles with javascripts and csss on this page, i'll try again:]

Hi, I have some problem with running plugin (version 1.18) on my XML file generated by FindBugs. I'm getting this NPE:FATAL: Could not parse FindBugs files. Please check if the file pattern is correct
and the latest FindBugs scanner is used (i.e., maven-findbugs-plugin >= 1.1.1)
java.lang.NullPointerException
at org.apache.commons.digester.Digester.createSAXException(Digester.java:2919)
at org.apache.commons.digester.Digester.createSAXException(Digester.java:2945)
at org.apache.commons.digester.Digester.endElement(Digester.java:1133)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(AbstractSAXParser.java:633)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1241)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(XMLDocumentFragmentScannerImpl.java:1685)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:368)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:834)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:764)
at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:148)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1242)
at org.apache.commons.digester.Digester.parse(Digester.java:1666)
at hudson.plugins.findbugs.FindBugsCounter.parseNativeFormat(FindBugsCounter.java:162)
at hudson.plugins.findbugs.FindBugsCounter.parse(FindBugsCounter.java:74)
at hudson.plugins.findbugs.FindBugsCounter.findBugs(FindBugsCounter.java:222)
at hudson.plugins.findbugs.FindBugsPublisher.perform(FindBugsPublisher.java:89)
at hudson.model.Build$RunnerImpl.performAllBuildStep(Build.java:150)
at hudson.model.Build$RunnerImpl.post2(Build.java:137)
at hudson.model.AbstractBuild$AbstractRunner.post(AbstractBuild.java:254)
at hudson.model.Run.run(Run.java:673)
at hudson.model.Build.run(Build.java:102)
at hudson.model.ResourceController.execute(ResourceController.java:70)
at hudson.model.Executor.run(Executor.java:64)Thanks for any suggestions,

Unknown User (manik)

I just upgraded my Hudson instance (to 1.197) and installed the findbugs plugin (ver 2.2), and all seems to have run well - the findbugs XML file was generated and I'm guessing it was picked up by the plugin - but I can't find any reports on the Hudson UI.

Where would one look to find this? A screen shot on this wiki page would be supremely useful ...

Unknown User (lukaszr)

Unknown User (dmorrow@maned.com)

Non-admin users cannot view the code.

I just install the FindBugs plugins for Hudson, and it works great. The reports it generates are very useful to me and my team.

There is one small issue though. In the "Details" view, where it lists each warning (with file-name, line number, and problem) it shows a link to the file-name only for me, the Hudson admin. For all of my colleagues, it doesn't show the link to "MyBadFile.java". This is unfortunate, because that is such a great view, showing the line in the context of the file.

I do manage the permissions of users logging into Hudson. My permissions, as the admin, are different from everyone else using Hudson. And I don't want to change it. But the rest of the team has pretty broad permissions. The permissions that are turned off for them are "overall:administer", "slave:configure" "slave:delete" and "job:release". I don't know why any of these permissions would prevent them from seeing the source view here. But if you have any ideas, I'd be grateful.

Hi, i get the following error using the 4.1 and the findbugs-maven-plugin 2.3 (hudson 1.339):

INFO [findbugs:findbugs execution: default]java Warnings generated: 2INFO ------------------------------------------------------------------------ERROR FATAL ERRORINFO ------------------------------------------------------------------------INFO nullINFO ------------------------------------------------------------------------INFO Trace
java.lang.NullPointerException
at hudson.remoting.RemoteClassLoader$ClassLoaderProxy.hashCode(RemoteClassLoader.java:419)
at java.util.HashMap.get(HashMap.java:300)
at hudson.remoting.ExportTable.export(ExportTable.java:155)
at hudson.remoting.Channel.export(Channel.java:468)
at hudson.remoting.RemoteClassLoader.exportId(RemoteClassLoader.java:341)
at hudson.remoting.RemoteClassLoader$ClassLoaderProxy.fetch2(RemoteClassLoader.java:373)
at sun.reflect.GeneratedMethodAccessor1315.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at hudson.remoting.RemoteInvocationHandler$RPCRequest.perform(RemoteInvocationHandler.java:274)
at hudson.remoting.Request$2.run(Request.java:270)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
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:619)

Is there any chance to get this working? The build is working when it's run from the console and if the findbugs hudson plugin is deactivated.

EDIT: It seems to be container-related (tomcat), if i run hudson via webstart (standalone) the findbugs-analysis works from a hudson build.

Unknown User (xpool)

I use Hudson ver. 1.343 and findbug plugin 4.3. I got the error below, who can help me ? Thank you for any idea.

[FINDBUGS] Collecting findbugs analysis files...
[FINDBUGS] Parsing of file D:\Development Kit\Hudson\jobs\scs\workspace\trunk\target\findbugs\findbugs.xml failed due to an exception:
org.dom4j.DocumentException: Sax error Nested exception: BugInstance with invalid priority value "Normal"
at edu.umd.cs.findbugs.SortedBugCollection.doReadXML(SortedBugCollection.java:291)
at edu.umd.cs.findbugs.SortedBugCollection.readXML(SortedBugCollection.java:263)
at hudson.plugins.findbugs.parser.NativeFindBugsParser.parse(NativeFindBugsParser.java:129)
at hudson.plugins.findbugs.parser.NativeFindBugsParser.parse(NativeFindBugsParser.java:69)
at hudson.plugins.findbugs.parser.FindBugsParser.parse(FindBugsParser.java:74)
at hudson.plugins.analysis.core.FilesParser.parseFile(FilesParser.java:152)
at hudson.plugins.analysis.core.FilesParser.parseFiles(FilesParser.java:131)
at hudson.plugins.analysis.core.FilesParser.invoke(FilesParser.java:87)
at hudson.plugins.analysis.core.FilesParser.invoke(FilesParser.java:28)
at hudson.FilePath.act(FilePath.java:694)
at hudson.FilePath.act(FilePath.java:676)
at hudson.plugins.findbugs.FindBugsPublisher.perform(FindBugsPublisher.java:104)
at hudson.plugins.analysis.core.HealthAwarePublisher.perform(HealthAwarePublisher.java:140)
at hudson.tasks.BuildStepMonitor$2.perform(BuildStepMonitor.java:27)
at hudson.model.AbstractBuild$AbstractRunner.perform(AbstractBuild.java:582)
at hudson.model.AbstractBuild$AbstractRunner.performAllBuildStep(AbstractBuild.java:563)
at hudson.model.AbstractBuild$AbstractRunner.performAllBuildStep(AbstractBuild.java:550)
at hudson.model.Build$RunnerImpl.post2(Build.java:152)
at hudson.model.AbstractBuild$AbstractRunner.post(AbstractBuild.java:528)
at hudson.model.Run.run(Run.java:1221)
at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)
at hudson.model.ResourceController.execute(ResourceController.java:88)
at hudson.model.Executor.run(Executor.java:122)
Caused by: java.lang.NumberFormatException: For input string: "Normal"
at edu.umd.cs.findbugs.SAXBugCollectionHandler.startElement(SAXBugCollectionHandler.java:204)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.AbstractXMLDocumentParser.emptyElement(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(Unknown Source)
at edu.umd.cs.findbugs.SortedBugCollection.doReadXML(SortedBugCollection.java:286)
... 22 more
Caused by: java.lang.NumberFormatException: For input string: "Normal"
at java.lang.NumberFormatException.forInputString(Unknown Source)
at java.lang.Integer.parseInt(Unknown Source)
at java.lang.Integer.parseInt(Unknown Source)
at edu.umd.cs.findbugs.SAXBugCollectionHandler.startElement(SAXBugCollectionHandler.java:201)
... 34 more
Nested exception:
java.lang.NumberFormatException: For input string: "Normal"
at edu.umd.cs.findbugs.SAXBugCollectionHandler.startElement(SAXBugCollectionHandler.java:204)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.AbstractXMLDocumentParser.emptyElement(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(Unknown Source)
at edu.umd.cs.findbugs.SortedBugCollection.doReadXML(SortedBugCollection.java:286)
at edu.umd.cs.findbugs.SortedBugCollection.readXML(SortedBugCollection.java:263)
at hudson.plugins.findbugs.parser.NativeFindBugsParser.parse(NativeFindBugsParser.java:129)
at hudson.plugins.findbugs.parser.NativeFindBugsParser.parse(NativeFindBugsParser.java:69)
at hudson.plugins.findbugs.parser.FindBugsParser.parse(FindBugsParser.java:74)
at hudson.plugins.analysis.core.FilesParser.parseFile(FilesParser.java:152)
at hudson.plugins.analysis.core.FilesParser.parseFiles(FilesParser.java:131)
at hudson.plugins.analysis.core.FilesParser.invoke(FilesParser.java:87)
at hudson.plugins.analysis.core.FilesParser.invoke(FilesParser.java:28)
at hudson.FilePath.act(FilePath.java:694)
at hudson.FilePath.act(FilePath.java:676)
at hudson.plugins.findbugs.FindBugsPublisher.perform(FindBugsPublisher.java:104)
at hudson.plugins.analysis.core.HealthAwarePublisher.perform(HealthAwarePublisher.java:140)
at hudson.tasks.BuildStepMonitor$2.perform(BuildStepMonitor.java:27)
at hudson.model.AbstractBuild$AbstractRunner.perform(AbstractBuild.java:582)
at hudson.model.AbstractBuild$AbstractRunner.performAllBuildStep(AbstractBuild.java:563)
at hudson.model.AbstractBuild$AbstractRunner.performAllBuildStep(AbstractBuild.java:550)
at hudson.model.Build$RunnerImpl.post2(Build.java:152)
at hudson.model.AbstractBuild$AbstractRunner.post(AbstractBuild.java:528)
at hudson.model.Run.run(Run.java:1221)
at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)
at hudson.model.ResourceController.execute(ResourceController.java:88)
at hudson.model.Executor.run(Executor.java:122)
Caused by: java.lang.NumberFormatException: For input string: "Normal"
at java.lang.NumberFormatException.forInputString(Unknown Source)
at java.lang.Integer.parseInt(Unknown Source)
at java.lang.Integer.parseInt(Unknown Source)
at edu.umd.cs.findbugs.SAXBugCollectionHandler.startElement(SAXBugCollectionHandler.java:201)
... 34 more
[FINDBUGS] Found 0 annotations (0 new, 0 high, 0 normal, 0 low)
[FINDBUGS] Not changing build status, since no threshold has been exceeded

Unknown User (nabanita)

Hi,

I am using Hudson 1.329 version and findbugs plugin 4.3 version. While trying build my project with findbugs:findbugs option it throws the following error. Can somebody please give me the solution to resolve the issue?

FINDBUGS File encoding has not been set in pom.xml, using platform encoding UTF-8, i.e. build is platform dependent (see <a href="http://docs.codehaus.org/display/MAVENUSER/POM+Element+for+Source+File+Encoding">Maven FAQ</a>).INFO ------------------------------------------------------------------------ERROR FATAL ERRORINFO ------------------------------------------------------------------------INFO Name is nullINFO ------------------------------------------------------------------------INFO Trace
java.lang.NullPointerException: Name is null
at java.lang.Enum.valueOf(Enum.java:191)
at hudson.plugins.analysis.util.model.Priority.valueOf(Priority.java:18)
at hudson.plugins.analysis.core.HealthAwareMavenReporter.getMinimumPriority(HealthAwareMavenReporter.java:397)
at hudson.plugins.analysis.core.AbstractHealthDescriptor.<init>(AbstractHealthDescriptor.java:42)
at hudson.plugins.findbugs.FindBugsHealthDescriptor.<init>(FindBugsHealthDescriptor.java:25)
at hudson.plugins.findbugs.FindBugsResultAction.<init>(FindBugsResultAction.java:36)
at hudson.plugins.findbugs.MavenFindBugsResultAction.<init>(MavenFindBugsResultAction.java:59)
at hudson.plugins.findbugs.FindBugsReporter.persistResult(FindBugsReporter.java:127)
at hudson.plugins.analysis.core.HealthAwareMavenReporter$1.call(HealthAwareMavenReporter.java:157)
at hudson.plugins.analysis.core.HealthAwareMavenReporter$1.call(HealthAwareMavenReporter.java:155)
at hudson.maven.MavenBuild$ProxyImpl.execute(MavenBuild.java:325)
at sun.reflect.GeneratedMethodAccessor223.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at hudson.model.Executor$1.call(Executor.java:376)
at hudson.util.InterceptingProxy$1.invoke(InterceptingProxy.java:23)
at $Proxy21.execute(Unknown Source)
at sun.reflect.GeneratedMethodAccessor331.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at hudson.remoting.RemoteInvocationHandler$RPCRequest.perform(RemoteInvocationHandler.java:274)
at hudson.remoting.RemoteInvocationHandler$RPCRequest.call(RemoteInvocationHandler.java:255)
at hudson.remoting.RemoteInvocationHandler$RPCRequest.call(RemoteInvocationHandler.java:215)
at hudson.remoting.UserRequest.perform(UserRequest.java:104)
at hudson.remoting.UserRequest.perform(UserRequest.java:48)
at hudson.remoting.Request$2.run(Request.java:244)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
at java.lang.Thread.run(Thread.java:619)INFO ------------------------------------------------------------------------INFO Total time: 1 minute 9 secondsINFO Finished at: Fri Feb 05 11:25:00 GMT 2010INFO Final Memory: 55M/373MINFO ------------------------------------------------------------------------
channel stopped

Unknown User (stripathy)

I am seeing the issue, that when I look at a build it says something like 41 new warnings, and 38 fixed warnings, but if I click on the it takes me to a page which contains actually 0 issues, total 0, to high low and all other category fixes 0. In effect the whole build might have only a couple of extra issues in the build, but this seeing so many fixed and new confuses the developers, and they are not sure whats wrong and which one is actually new.

Is anybody else experiencing this problem ? I am getting same unusual numbers for the Duplicate Code checker, and the Checkstyle always says all warning are new.

We are on Hudson 1.344,

Static Analysis Utilities 1.3

Checkstyle Plug-in 3.2

Duplicate Code Scanner Plug-in 2.2

Findbugs Plug-in 4.3

We are using ant to do the build, and publish the findings to xml files.

I have a question about findbugs in hudson. there will show the new and fixed bugs for my project in fingbugs-hudson, but does hudson allow me to assign the 'not a bugs' status in hudson GUI? because I have to see the same report in the next new build, it's a little redundant effort for me...

It seems that we can implement this feature in hudson, but it is a little complex, right?

To tell the truth, I don't like to suppress the warnings in source code @@. From hudson GUI, I can see how many false positive issues, and what kinds of them? It helps us to fine tune my rule(both for findbugs rule and our coding standard) rather than let my team member to add suppress strings at random....

I found that we can modify the findbugs_warning.xml in hudson-findbugs， replace ‘<notAProblem>false</notAProblem>’ with <notAProblem>True</notAProblem>，it would not see this warning in Jenkins UI after the modification. Could we see the "not a problem" issues in Jenkins UI? like 'Fixed issues'? it will report which files in which line and which pattern are not a problem?
Thanks for your help：）

Unknown User (erase.your.mind@gmail.com)

Hello Dr. Hafner,

First of all, compliments for the great plugin!

Reading the changelog, I see the Plugin has support for the FindBugs WebCloud. We have a FindBugs Cloud in our intranet and an appropriate Client as FindBugs plugin. The FindBugs GUI and Eclipse plugin connect successfully to the Cloud. We have also developed another plugin with custom detectors.

My first question is: is it possible to make it that your Plugin connects to our Cloud in order to read comments and upload new bug instances? Reading the sources and looking at the contents of your Plugin I figure that the FindBugs libraries are somehow nested or packaged (in the library jar) with the Plugin. In that sense there is no "plugin" folder where our Cloud Plugin can be placed so that it can be loaded from FindBugs as it works with the standard distribution. Could you please provide some guidance in how loading our Cloud Plugin can be achieved. Can the Jenkins Plugin be extended to honor a "plugin" folder for FindBugs plugins? This is a feature request if it can be done easily. Or do we have to repackage your plugin from source. Could you please highlight what and how needs to be touched?

EDIT: Alternatively, will the FindBugs plugins in ~userhome/.findbugs/plugin be loaded by your Jenkins FindBugs Plugin?

Assuming the cloud plugin can be loaded, how to instruct your Plugin to use it? Will the "Cloud" element of the analysis result XML be honored?

Last but not least: it is stated on this page that long bug descriptions are loaded from the FindBugs library? What happens if the Bugs are reported by (and defined in) a FindBugs plugin?

Generally: is it not possible to use an external installation of FindBugs instead of re-packaging the libraries with the plugin?

Hi Vasil, actually I don't know what cloud features are available. This feature has been added by the findbugs team. I never used that up to now.

I'm not sure how easy it would be to add custom plug-ins. The problematic thing I see is the class loading: Jenkins uses a specific class loader for each plug-in. I don't know if that works out for the findbugs library. Are you interested to dig into that issue? (The reason that I'm repackaging findbugs is to use a different asm version, Jenkins contains a conflicting version)

Unknown User (erase.your.mind@gmail.com)

Hello Dr. Hafner, and thank you for the quick reply. I am working on the issue, but unfortunately I won't be able to stay too long on it.

I already found out that FindBugs plugins are loaded from ~<jenkins-user-home>/.findbugs/plugin, so at least this problem is kind of solved. Obviously the ClassLoader is not causing any trouble (I think FindBugs once loaded itself uses its own ClassLoader to load the plugins).

It is still not working for me though, as I have built a slightly modified webCloudClient from the trunk sources of FindBugs in order to tweak the method of user authentication (the original plugin is tied to an OpenID authentication through a browser). So when the Jenkins Plugin tries to use the Client, I get an exception because the interface of some imported classes has obviously changed in version 2.0.1-rc2 of FindBugs. Here the ISOWebCloudClient is a replacement for WebCloudClient, but the function throwing the exception is actually unchanged:

Stracktrace

FATAL: edu.umd.cs.findbugs.cloud.Cloud$SigninState.canDownload()Z
java.lang.NoSuchMethodError: edu.umd.cs.findbugs.cloud.Cloud$SigninState.canDownload()Z
at edu.umd.cs.findbugs.cloud.appEngine.ISOWebCloudClient.isInCloud(ISOWebCloudClient.java:609)
at hudson.plugins.findbugs.parser.FindBugsParser.setCloudInformation(FindBugsParser.java:289)
at hudson.plugins.findbugs.parser.FindBugsParser.parse(FindBugsParser.java:232)
at hudson.plugins.findbugs.parser.FindBugsParser.parse(FindBugsParser.java:143)
at hudson.plugins.findbugs.parser.FindBugsParser.parse(FindBugsParser.java:103)
at hudson.plugins.analysis.core.FilesParser.parseFile(FilesParser.java:358)
at hudson.plugins.analysis.core.FilesParser.parseFiles(FilesParser.java:317)
at hudson.plugins.analysis.core.FilesParser.invoke(FilesParser.java:266)
at hudson.plugins.analysis.core.FilesParser.invoke(FilesParser.java:31)
at hudson.FilePath.act(FilePath.java:842)
at hudson.FilePath.act(FilePath.java:824)
at hudson.plugins.findbugs.FindBugsPublisher.perform(FindBugsPublisher.java:156)
at hudson.plugins.analysis.core.HealthAwarePublisher.perform(HealthAwarePublisher.java:338)
at hudson.tasks.BuildStepMonitor$2.perform(BuildStepMonitor.java:27)
at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:717)
at hudson.model.AbstractBuild$AbstractBuildExecution.performAllBuildSteps(AbstractBuild.java:692)
at hudson.model.Build$BuildExecution.post2(Build.java:183)
at hudson.model.AbstractBuild$AbstractBuildExecution.post(AbstractBuild.java:639)
at hudson.model.Run.execute(Run.java:1513)
at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)
at hudson.model.ResourceController.execute(ResourceController.java:88)
at hudson.model.Executor.run(Executor.java:236)

Do you plan on upgrading to FindBugs 2.0.1 in the near future (I know it is still a rc, but it seems quite stable)? Or could you point me to what I need to change to repackage it myself from source?

In contrast to checkstyle or pmd the findbugs goal will produce nothing if called before a compile. This means if you used "clean install" before, you have to change it to "clean install findbugs:findbugs". So what will not work is "clean findbugs:findbugs install". This will just add

[FINDBUGS] No report found for mojo findbugs[INFO]

to the console output.

It is NOT necessary to add something to pom.xm! Just specify the required properties using the maven -D option. Currently I use "-DlinkXRef=false -Dfindbugs.xmlOutput=true clean checkstyle:checkstyle pmd:pmd install findbugs:findbugs" for running all 3 static code analysers.