|
FindBugs™ 1.3.4 | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectedu.umd.cs.findbugs.FindBugs
public class FindBugs
An instance of this class is used to apply the selected set of analyses on some collection of Java classes. It also implements the command line interface.
It is no longer recommended to create instances of this class.
Use FindBugs2 instead. Some useful static methods remain
in this class, but may eventually be moved elsewhere.
| Field Summary | |
|---|---|
static boolean |
DEBUG
|
static AnalysisFeatureSetting[] |
DEFAULT_EFFORT
|
static java.util.Set<java.lang.String> |
knownURLProtocolSet
Known URL protocols. |
static AnalysisFeatureSetting[] |
LESS_EFFORT
|
static AnalysisFeatureSetting[] |
MAX_EFFORT
|
static AnalysisFeatureSetting[] |
MIN_EFFORT
|
static AnalysisFeatureSetting[] |
MORE_EFFORT
|
static boolean |
TIMEDEBUG
|
static int |
TIMEQUANTUM
|
| Fields inherited from interface org.apache.bcel.Constants |
|---|
AALOAD, AASTORE, ACC_ABSTRACT, ACC_ANNOTATION, ACC_BRIDGE, ACC_ENUM, ACC_FINAL, ACC_INTERFACE, ACC_NATIVE, ACC_PRIVATE, ACC_PROTECTED, ACC_PUBLIC, ACC_STATIC, ACC_STRICT, ACC_SUPER, ACC_SYNCHRONIZED, ACC_SYNTHETIC, ACC_SYPER, ACC_TRANSIENT, ACC_VARARGS, ACC_VOLATILE, ACCESS_NAMES, ACONST_NULL, ALOAD, ALOAD_0, ALOAD_1, ALOAD_2, ALOAD_3, ANEWARRAY, ANEWARRAY_QUICK, ARETURN, ARRAYLENGTH, ASTORE, ASTORE_0, ASTORE_1, ASTORE_2, ASTORE_3, ATHROW, ATTR_ANNOTATION_DEFAULT, ATTR_CODE, ATTR_CONSTANT_VALUE, ATTR_DEPRECATED, ATTR_ENCLOSING_METHOD, ATTR_EXCEPTIONS, ATTR_INNER_CLASSES, ATTR_LINE_NUMBER_TABLE, ATTR_LOCAL_VARIABLE_TABLE, ATTR_LOCAL_VARIABLE_TYPE_TABLE, ATTR_PMG, ATTR_RUNTIME_VISIBLE_ANNOTATIONS, ATTR_RUNTIME_VISIBLE_PARAMETER_ANNOTATIONS, ATTR_RUNTIMEIN_VISIBLE_ANNOTATIONS, ATTR_RUNTIMEIN_VISIBLE_PARAMETER_ANNOTATIONS, ATTR_SIGNATURE, ATTR_SOURCE_FILE, ATTR_STACK_MAP, ATTR_SYNTHETIC, ATTR_UNKNOWN, ATTRIBUTE_NAMES, BALOAD, BASTORE, BIPUSH, BREAKPOINT, CALOAD, CASTORE, CHECKCAST, CHECKCAST_QUICK, CLASS_TYPE_NAMES, CONSTANT_Class, CONSTANT_Double, CONSTANT_Fieldref, CONSTANT_Float, CONSTANT_Integer, CONSTANT_InterfaceMethodref, CONSTANT_Long, CONSTANT_Methodref, CONSTANT_NameAndType, CONSTANT_NAMES, CONSTANT_String, CONSTANT_Utf8, CONSTRUCTOR_NAME, CONSUME_STACK, D2F, D2I, D2L, DADD, DALOAD, DASTORE, DCMPG, DCMPL, DCONST_0, DCONST_1, DDIV, DLOAD, DLOAD_0, DLOAD_1, DLOAD_2, DLOAD_3, DMUL, DNEG, DREM, DRETURN, DSTORE, DSTORE_0, DSTORE_1, DSTORE_2, DSTORE_3, DSUB, DUP, DUP_X1, DUP_X2, DUP2, DUP2_X1, DUP2_X2, F2D, F2I, F2L, FADD, FALOAD, FASTORE, FCMPG, FCMPL, FCONST_0, FCONST_1, FCONST_2, FDIV, FLOAD, FLOAD_0, FLOAD_1, FLOAD_2, FLOAD_3, FMUL, FNEG, FREM, FRETURN, FSTORE, FSTORE_0, FSTORE_1, FSTORE_2, FSTORE_3, FSUB, GETFIELD, GETFIELD_QUICK, GETFIELD_QUICK_W, GETFIELD2_QUICK, GETSTATIC, GETSTATIC_QUICK, GETSTATIC2_QUICK, GOTO, GOTO_W, I2B, I2C, I2D, I2F, I2L, I2S, IADD, IALOAD, IAND, IASTORE, ICONST_0, ICONST_1, ICONST_2, ICONST_3, ICONST_4, ICONST_5, ICONST_M1, IDIV, IF_ACMPEQ, IF_ACMPNE, IF_ICMPEQ, IF_ICMPGE, IF_ICMPGT, IF_ICMPLE, IF_ICMPLT, IF_ICMPNE, IFEQ, IFGE, IFGT, IFLE, IFLT, IFNE, IFNONNULL, IFNULL, IINC, ILLEGAL_OPCODE, ILLEGAL_TYPE, ILOAD, ILOAD_0, ILOAD_1, ILOAD_2, ILOAD_3, IMPDEP1, IMPDEP2, IMUL, INEG, INSTANCEOF, INSTANCEOF_QUICK, INT2BYTE, INT2CHAR, INT2SHORT, INTERFACES_IMPLEMENTED_BY_ARRAYS, INVOKEINTERFACE, INVOKEINTERFACE_QUICK, INVOKENONVIRTUAL, INVOKENONVIRTUAL_QUICK, INVOKESPECIAL, INVOKESTATIC, INVOKESTATIC_QUICK, INVOKESUPER_QUICK, INVOKEVIRTUAL, INVOKEVIRTUAL_QUICK, INVOKEVIRTUAL_QUICK_W, INVOKEVIRTUALOBJECT_QUICK, IOR, IREM, IRETURN, ISHL, ISHR, ISTORE, ISTORE_0, ISTORE_1, ISTORE_2, ISTORE_3, ISUB, ITEM_Bogus, ITEM_Double, ITEM_Float, ITEM_InitObject, ITEM_Integer, ITEM_Long, ITEM_NAMES, ITEM_NewObject, ITEM_Null, ITEM_Object, IUSHR, IXOR, JSR, JSR_W, KNOWN_ATTRIBUTES, L2D, L2F, L2I, LADD, LALOAD, LAND, LASTORE, LCMP, LCONST_0, LCONST_1, LDC, LDC_QUICK, LDC_W, LDC_W_QUICK, LDC2_W, LDC2_W_QUICK, LDIV, LLOAD, LLOAD_0, LLOAD_1, LLOAD_2, LLOAD_3, LMUL, LNEG, LOOKUPSWITCH, LOR, LREM, LRETURN, LSHL, LSHR, LSTORE, LSTORE_0, LSTORE_1, LSTORE_2, LSTORE_3, LSUB, LUSHR, LXOR, MAJOR, MAJOR_1_1, MAJOR_1_2, MAJOR_1_3, MAJOR_1_4, MAJOR_1_5, MAJOR_1_6, MAX_ACC_FLAG, MAX_BYTE, MAX_CODE_SIZE, MAX_CP_ENTRIES, MAX_SHORT, MINOR, MINOR_1_1, MINOR_1_2, MINOR_1_3, MINOR_1_4, MINOR_1_5, MINOR_1_6, MONITORENTER, MONITOREXIT, MULTIANEWARRAY, MULTIANEWARRAY_QUICK, NEW, NEW_QUICK, NEWARRAY, NO_OF_OPERANDS, NOP, OPCODE_NAMES, POP, POP2, PRODUCE_STACK, PUSH, PUTFIELD, PUTFIELD_QUICK, PUTFIELD_QUICK_W, PUTFIELD2_QUICK, PUTSTATIC, PUTSTATIC_QUICK, PUTSTATIC2_QUICK, RESERVED, RET, RETURN, SALOAD, SASTORE, SHORT_TYPE_NAMES, SIPUSH, STATIC_INITIALIZER_NAME, SWAP, SWITCH, T_ADDRESS, T_ARRAY, T_BOOLEAN, T_BYTE, T_CHAR, T_DOUBLE, T_FLOAT, T_INT, T_LONG, T_OBJECT, T_REFERENCE, T_SHORT, T_UNKNOWN, T_VOID, TABLESWITCH, TYPE_NAMES, TYPE_OF_OPERANDS, UNDEFINED, UNPREDICTABLE, WIDE |
| Fields inherited from interface edu.umd.cs.findbugs.ExitCodes |
|---|
BUGS_FOUND_FLAG, ERROR_FLAG, MISSING_CLASS_FLAG |
| Constructor Summary | |
|---|---|
FindBugs()
Deprecated. You use should FindBugs2 instead. |
|
FindBugs(BugReporter bugReporter,
Project project)
Deprecated. You use should FindBugs2 instead. |
|
| Method Summary | |
|---|---|
void |
addClassObserver(IClassObserver classObserver)
Add an IClassObserver. |
void |
addFilter(java.lang.String filterFileName,
boolean include)
Set filter of bug instances to include or exclude. |
static void |
configureBaselineFilter(DelegatingBugReporter bugReporter,
java.lang.String baselineFileName)
|
static void |
configureBugCollection(IFindBugsEngine findBugs)
Configure the BugCollection (if the BugReporter being used is constructing one). |
static void |
configureFilter(DelegatingBugReporter bugReporter,
java.lang.String filterFileName,
boolean include)
|
static void |
configureTrainingDatabases(IFindBugsEngine findBugs)
Configure training databases. |
boolean |
emitTrainingOutput()
Return whether or not training output should be emitted after analysis completes. |
void |
enableTrainingInput(java.lang.String trainingInputDir)
Set whether or not training input should be used to make the analysis more precise. |
void |
enableTrainingOutput(java.lang.String trainingOutputDir)
Set whether or not training output should be emitted. |
void |
excludeBaselineBugs(java.lang.String baselineBugs)
Provide baseline of bugs not to report |
void |
execute()
Execute FindBugs on the Project. |
int |
getBugCount()
Get the number of bug instances that were reported during analysis. |
BugReporter |
getBugReporter()
Get the BugReporter. |
java.lang.String |
getCurrentClass()
Get the name of the most recent class to be analyzed. |
int |
getErrorCount()
Get the number of errors that occurred during analysis. |
static java.lang.String |
getHome()
Get the FindBugs home directory. |
int |
getMissingClassCount()
Get the number of time missing classes were reported during analysis. |
Project |
getProject()
Get the Project. |
java.lang.String |
getProjectName()
|
java.lang.String |
getReleaseName()
|
java.lang.String |
getTrainingInputDir()
Get the training input database directory. |
java.lang.String |
getTrainingOutputDir()
Get the training output directory. |
UserPreferences |
getUserPreferences()
Get the UserPreferences. |
static boolean |
isDetectorEnabled(IFindBugsEngine findBugs,
DetectorFactory factory)
Determing whether or not given DetectorFactory should be enabled. |
static void |
processCommandLine(TextUICommandLine commandLine,
java.lang.String[] argv,
IFindBugsEngine findBugs)
Process the command line. |
static void |
runMain(IFindBugsEngine findBugs,
TextUICommandLine commandLine)
|
void |
setAbridgedMessages(boolean xmlWithAbridgedMessages)
|
void |
setAnalysisFeatureSettings(AnalysisFeatureSetting[] settingList)
Set analysis feature settings. |
void |
setBugReporter(BugReporter bugReporter)
Set the BugReporter. |
void |
setClassScreener(IClassScreener classScreener)
Set the ClassScreener. |
void |
setDetectorFactoryCollection(DetectorFactoryCollection detectorFactoryCollection)
Set the DetectorFactoryCollection from which plugins/detectors may be accessed. |
static void |
setHome(java.lang.String home)
Set the FindBugs home directory. |
void |
setNoClassOk(boolean noClassOk)
Set whether or not to generate an empty output file if there were no class files specified. |
void |
setProgressCallback(FindBugsProgress progressCallback)
Set the progress callback that will be used to keep track of the progress of the analysis. |
void |
setProject(Project project)
Set the Project. |
void |
setProjectName(java.lang.String projectName)
|
void |
setRelaxedReportingMode(boolean relaxedReportingMode)
Set relaxed reporting mode. |
void |
setReleaseName(java.lang.String releaseName)
|
void |
setScanNestedArchives(boolean scanNestedArchives)
Set whether or not nested archives should be scanned. |
void |
setSourceInfoFile(java.lang.String sourceInfoFile)
Set the filename of the source info file containing line numbers for fields and classes. |
void |
setUserPreferences(UserPreferences userPreferences)
Set the UserPreferences representing which Detectors should be used. |
static void |
showCommandLineOptions()
Print command line options synopses to stdout. |
static void |
showCommandLineOptions(TextUICommandLine commandLine)
|
static void |
showHelp(TextUICommandLine commandLine)
|
static void |
showSynopsis()
|
boolean |
useTrainingInput()
Return whether or not we should make use of training data. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
public static final AnalysisFeatureSetting[] MIN_EFFORT
public static final AnalysisFeatureSetting[] LESS_EFFORT
public static final AnalysisFeatureSetting[] DEFAULT_EFFORT
public static final AnalysisFeatureSetting[] MORE_EFFORT
public static final AnalysisFeatureSetting[] MAX_EFFORT
public static final boolean DEBUG
public static final boolean TIMEDEBUG
public static final int TIMEQUANTUM
public static final java.util.Set<java.lang.String> knownURLProtocolSet
| Constructor Detail |
|---|
@Deprecated public FindBugs()
@Deprecated
public FindBugs(BugReporter bugReporter,
Project project)
bugReporter - the BugReporter object that will be used to report
BugInstance objects, analysis errors, class to source mapping, etc.project - the Project indicating which files to analyze and
the auxiliary classpath to use; note that the FindBugs
object will create a private copy of the Project object| Method Detail |
|---|
public void setDetectorFactoryCollection(DetectorFactoryCollection detectorFactoryCollection)
IFindBugsEngine
setDetectorFactoryCollection in interface IFindBugsEnginedetectorFactoryCollection - the DetectorFactoryCollectionpublic BugReporter getBugReporter()
IFindBugsEngine
getBugReporter in interface IFindBugsEnginepublic void setBugReporter(BugReporter bugReporter)
IFindBugsEngine
setBugReporter in interface IFindBugsEnginebugReporter - The BugReporter to setpublic void setProject(Project project)
IFindBugsEngine
setProject in interface IFindBugsEngineproject - The Project to setpublic Project getProject()
IFindBugsEngine
getProject in interface IFindBugsEnginepublic void setProgressCallback(FindBugsProgress progressCallback)
IFindBugsEngine
setProgressCallback in interface IFindBugsEngineprogressCallback - the progress callback
public void addFilter(java.lang.String filterFileName,
boolean include)
throws java.io.IOException,
FilterException
IFindBugsEngine
addFilter in interface IFindBugsEnginefilterFileName - the name of the filter fileinclude - true if the filter specifies bug instances to include,
false if it specifies bug instances to exclude
java.io.IOException
FilterException
public void excludeBaselineBugs(java.lang.String baselineBugs)
throws java.io.IOException,
org.dom4j.DocumentException
IFindBugsEngine
excludeBaselineBugs in interface IFindBugsEnginebaselineBugs - the name of the xml bug baseline file
org.dom4j.DocumentException
java.io.IOExceptionpublic void setUserPreferences(UserPreferences userPreferences)
IFindBugsEngine
setUserPreferences in interface IFindBugsEngineuserPreferences - the UserPreferencespublic void addClassObserver(IClassObserver classObserver)
IFindBugsEngine
addClassObserver in interface IFindBugsEngineclassObserver - the IClassObserverpublic void setClassScreener(IClassScreener classScreener)
IFindBugsEngine
setClassScreener in interface IFindBugsEngineclassScreener - the ClassScreener to usepublic void setRelaxedReportingMode(boolean relaxedReportingMode)
IFindBugsEngine
setRelaxedReportingMode in interface IFindBugsEnginerelaxedReportingMode - true if relaxed reporting mode should be enabled,
false if notpublic void enableTrainingOutput(java.lang.String trainingOutputDir)
IFindBugsEngine
enableTrainingOutput in interface IFindBugsEnginetrainingOutputDir - directory to save training output inpublic void enableTrainingInput(java.lang.String trainingInputDir)
IFindBugsEngine
enableTrainingInput in interface IFindBugsEnginetrainingInputDir - directory to load training input frompublic void setAnalysisFeatureSettings(AnalysisFeatureSetting[] settingList)
IFindBugsEngine
setAnalysisFeatureSettings in interface IFindBugsEnginesettingList - list of analysis feature settingspublic java.lang.String getReleaseName()
getReleaseName in interface IFindBugsEnginepublic void setReleaseName(java.lang.String releaseName)
setReleaseName in interface IFindBugsEnginereleaseName - The releaseName to set.public void setSourceInfoFile(java.lang.String sourceInfoFile)
IFindBugsEngine
setSourceInfoFile in interface IFindBugsEnginesourceInfoFile - the source info filename
public void execute()
throws java.io.IOException,
java.lang.InterruptedException
IFindBugsEngine
execute in interface IFindBugsEnginejava.io.IOException - if an I/O exception occurs analyzing one of the files
java.lang.InterruptedException - if the thread is interrupted while conducting the analysispublic java.lang.String getCurrentClass()
IFindBugsEngine
getCurrentClass in interface IFindBugsEnginepublic int getBugCount()
IFindBugsEngine
getBugCount in interface IFindBugsEnginepublic int getErrorCount()
IFindBugsEngine
getErrorCount in interface IFindBugsEnginepublic int getMissingClassCount()
IFindBugsEngine
getMissingClassCount in interface IFindBugsEnginepublic boolean emitTrainingOutput()
IFindBugsEngine
emitTrainingOutput in interface IFindBugsEnginepublic UserPreferences getUserPreferences()
IFindBugsEngine
getUserPreferences in interface IFindBugsEnginepublic java.lang.String getTrainingInputDir()
IFindBugsEngine
getTrainingInputDir in interface IFindBugsEnginepublic java.lang.String getTrainingOutputDir()
IFindBugsEngine
getTrainingOutputDir in interface IFindBugsEnginepublic boolean useTrainingInput()
IFindBugsEngine
useTrainingInput in interface IFindBugsEnginepublic void setScanNestedArchives(boolean scanNestedArchives)
IFindBugsEngine
setScanNestedArchives in interface IFindBugsEnginescanNestedArchives - true if nested archives should be scanned, false if notpublic void setNoClassOk(boolean noClassOk)
IFindBugsEngine
setNoClassOk in interface IFindBugsEnginenoClassOk - true if FindBugs should generate empty output filepublic static void setHome(java.lang.String home)
public static java.lang.String getHome()
public static void configureTrainingDatabases(IFindBugsEngine findBugs)
throws java.io.IOException
java.io.IOException
public static boolean isDetectorEnabled(IFindBugsEngine findBugs,
DetectorFactory factory)
findBugs - the IFindBugsEnginefactory - the DetectorFactory
public static void processCommandLine(TextUICommandLine commandLine,
java.lang.String[] argv,
IFindBugsEngine findBugs)
throws java.io.IOException,
FilterException
commandLine - the TextUICommandLine object which will parse the command lineargv - the command line argumentsfindBugs - the IFindBugsEngine to configure
java.io.IOException
FilterExceptionpublic static void showHelp(TextUICommandLine commandLine)
public static void runMain(IFindBugsEngine findBugs,
TextUICommandLine commandLine)
throws java.io.IOException,
java.lang.RuntimeException
java.io.IOException
java.lang.RuntimeExceptionpublic static void showCommandLineOptions()
public static void showCommandLineOptions(TextUICommandLine commandLine)
public static void showSynopsis()
public static void configureFilter(DelegatingBugReporter bugReporter,
java.lang.String filterFileName,
boolean include)
throws java.io.IOException,
FilterException
java.io.IOException
FilterException
public static void configureBaselineFilter(DelegatingBugReporter bugReporter,
java.lang.String baselineFileName)
throws java.io.IOException,
org.dom4j.DocumentException
java.io.IOException
org.dom4j.DocumentExceptionpublic static void configureBugCollection(IFindBugsEngine findBugs)
findBugs - the IFindBugsEnginepublic java.lang.String getProjectName()
getProjectName in interface IFindBugsEnginepublic void setProjectName(java.lang.String projectName)
setProjectName in interface IFindBugsEngineprojectName - The project name to set.public void setAbridgedMessages(boolean xmlWithAbridgedMessages)
setAbridgedMessages in interface IFindBugsEngine
|
FindBugs™ 1.3.4 | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||