JDiff Help
Description: JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.
Keywords: diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet

`10` | Overview | Package | Class | Statistics | Help
| Generated by JDiff
| FRAMES NO FRAMES

# JDiff Documentation

> JDiff is a Javadoc doclet which generates a report of the API differences between two versions of a product. It does not report changes in Javadoc comments, or changes in what a class or method does. This help page describes the different parts of the output from JDiff.

> See the reference page in the source for JDiff for information about how to generate a report like this one.

> The indexes shown in the top-left frame help show each type of change in more detail. The index "All Differences" contains all the differences between the APIs, in alphabetical order. These indexes all use the same format:
> - Removed packages, classes, constructors, methods and fields are struck through.
> - Added packages, classes, constructors, methods and fields appear in bold.
> - Changed packages, classes, constructors, methods and fields appear in normal text.

> You can always tell when you are reading a JDiff page, rather than a Javadoc page, by the color of the index bar and the color of the background. Links which take you to a Javadoc page are always in a `typewriter` font. Just like Javadoc, all interface names are in italic, and class names are not italicized. Where there are multiple entries in an index with the same name, the heading for them is also in italics, but is not a link.

> ### `Javadoc`

> This is a link to the top-level Javadoc page for the new version of the product.

> ### Overview

> The overview is the top-level summary of what was removed, added and changed between versions.

> ### Package

> This is a link to the package containing the current changed class or interface.

> ### Class

> This is highlighted when you are looking at the changed class or interface.

> ### Text Changes

> This is a link to the top-level index of all documentation changes for the current package or class. If it is not present, then there are no documentation changes for the current package or class. This link can be removed entirely by not using the `-docchanges` option.

> ### Statistics

> This is a link to a page which shows statistics about the changes between the two APIs. This link can be removed entirely by not using the `-stats` option.

> ### Help

> A link to this Help page for JDiff.

> ### Prev/Next

> These links take you to the previous and next changed package or class.

> ### Frames/No Frames

> These links show and hide the HTML frames. All pages are available with or without frames.

> ## Complex Changes

> There are some complex changes which can occur between versions, for example, when two or more methods with the same name change simultaneously, or when a method or field is moved into or from a superclass. In these cases, the change will be seen as a removal and an addition, rather than as a change. Unexpected removals or additions are often part of one of these type of changes.