FindBugs Report

Project Information

Project: JSword/BibleDesktop

FindBugs version: 1.3.9

Code analyzed:



Metrics

32056 lines of code analyzed, in 791 classes, in 48 packages.

Metric Total Density*
High Priority Warnings 0.00
Medium Priority Warnings 2 0.06
Low Priority Warnings 7 0.22
Total Warnings 9 0.28

(* Defects per Thousand lines of non-commenting source statements)



Contents

Summary

Warning Type Number
Correctness Warnings 1
Dodgy Warnings 8
Total 9

Warnings

Click on a warning row to see full context information.

Correctness Warnings

Code Warning
UwF Unwritten field: org.crosswire.common.progress.swing.JobsProgressBar$JobData.cancelButton

Dodgy Warnings

Code Warning
DLS Dead store to availableBooks in org.crosswire.jsword.examples.APIExamples.installBook()
DLS Dead store to installer in org.crosswire.jsword.examples.APIExamples.installBook()
DLS Dead store to name in org.crosswire.jsword.examples.APIExamples.installBook()
IC Initialization circularity between org.crosswire.jsword.passage.RestrictionType and org.crosswire.jsword.passage.RestrictionType$2
REC Exception is caught when Exception is not thrown in org.crosswire.bibledesktop.display.basic.ActiveURITip.updateText(URIEvent)
REC Exception is caught when Exception is not thrown in org.crosswire.bibledesktop.display.basic.URITipHelper.retrieve(Converter)
REC Exception is caught when Exception is not thrown in org.crosswire.bibledesktop.display.basic.URITipMgr.updateText()
RI Class org.crosswire.bibledesktop.display.basic.URITipMgr implements same interface as superclass

Details

DLS_DEAD_LOCAL_STORE: Dead store to local variable

This instruction assigns a value to a local variable, but the value is not read or used in any subsequent instruction. Often, this indicates an error, because the value computed is never used.

Note that Sun's javac compiler often generates dead stores for final local variables. Because FindBugs is a bytecode-based tool, there is no easy way to eliminate these false positives.

IC_INIT_CIRCULARITY: Initialization circularity

A circularity was detected in the static initializers of the two classes referenced by the bug instance.  Many kinds of unexpected behavior may arise from such circularity.

REC_CATCH_EXCEPTION: Exception is caught when Exception is not thrown

This method uses a try-catch block that catches Exception objects, but Exception is not thrown within the try block, and RuntimeException is not explicitly caught. It is a common bug pattern to say try { ... } catch (Exception e) { something } as a shorthand for catching a number of types of exception each of whose catch blocks is identical, but this construct also accidentally catches RuntimeException as well, masking potential bugs.

RI_REDUNDANT_INTERFACES: Class implements same interface as superclass

This class declares that it implements an interface that is also implemented by a superclass. This is redundant because once a superclass implements an interface, all subclasses by default also implement this interface. It may point out that the inheritance hierarchy has changed since this class was created, and consideration should be given to the ownership of the interface's implementation.

UWF_UNWRITTEN_FIELD: Unwritten field

This field is never written.  All reads of it will return the default value. Check for errors (should it have been initialized?), or remove it if it is useless.