Java knowledge base (JKB)

A Java knowledge base (.jkb) file is the mechanism that tunes specified Klocwork issue checkers to reduce false positives (or less commonly false negatives) in your Java analysis results.

You'll also come across JKB files when you create your own Java Path checker.

The JKB file contains code paths that should be added to or eliminated from the checker's consideration.

Klocwork traceback can help you determine the criteria by which code paths are to be added to or eliminated from the checker's consideration.

Once you identify the criteria, then you must communicate them to the engine using a JKB file that contains:

  • the methods of interest to you
  • JKB annotations that indicate how these items are to be handled; for example:
  • @Bind (to specify which checker should be tuned)
  • @Check, @CheckTrue, @CheckFalse, and @Wipe (to specify data validation to reduce false positives)
  • @Source, @Sink, and @Prop (to report more issues)

Since the JKB file can be created from your project workspace, you don't have to import it.

For more information about annotations, see Java knowledge base reference.