JavaDoc Sync Plugin 8
The JavaDoc Sync Plugin will assist you to keep your
JavaDoc in sync between interface definitions and the
implementations, or method definitions and method overrides.
The plugin now uses template based generation of JavaDoc, so
that the JavaDoc text can now easily be customized to your needs.
The JavaDoc Sync Plugin was originally written by Raymond Brandon but was updated for IntelliJ 8 by
The JavaDoc Sync Plugin can:
- highlight methods that define the @inheritDoc tag but there's no super method
- highlight methods that define the @inheritDoc tag but the super method doesn't have javaDoc
- highlight a class if one or more methods do not define JavaDoc
- Generate JavaDoc for all methods that do not define JavaDoc according to user defined templates
- Ignore methods that do not match the configured access modifier level
- Ignore overridden methods of anonymous classes or inner classes
- highlight methods that do not have JavaDoc
- highlight fields that do not have JavaDoc
- highlight methods of interface implementations of which
the JavaDoc differs from the JavaDoc defined at interface level
- highlight overridden methods/constructors of which
the JavaDoc differs from the JavaDoc defined in the super classes
When the JavaDoc Sync Plugin detects differences between the
defining interface or base method and the implementing or
overriding method, the user will get quick fixes presented to
update the JavaDoc like:
- Copy JavaDoc from parent
- Move to parent and introduce reference
- Replace parent JavaDoc
- Generate JavaDoc from signature
- Generate JavaDoc from field
- Generate JavaDoc for all methods
To turn on the JavaDoc Sync plugin, go to Settings->Errors and select "JavaDoc issues"
Recent change notes:
07 Apr 2009 Bug fix release, tested against 8.1(9732):
- Fixes StringIndexOutOfBoundsException when checking for reference to parent method.
- Fixes incorrectly formatted Regular Expression when method arguments contained square brackets (i.e. "")
04 Oct 2008 Updated to use the changed plugin API with IntelliJ 8.
- This update breaks backwards compatibility with previous IntelliJ versions.
10 Aug 2007 Bug fix release, tested against 6.0.5(6180):
- Fixed duplicate introduce reference option.
- //TODO Fix JavaDoc insertion is reformatted automatically causing it not to match with parent anymore.
14 Jul 2007 Bug fix release, tested against 6.0.5(6180):
- Fixed NullPointerException when generating reference for method of anonymous class.
11 Jul 2007 Added functionality, tested against 6.0.5(6180):
- New feature: support @inheritDoc tag. Verifies that parent has JavaDoc and highlights method if parent
- New feature: generate JavaDoc for all methods at once at class level
- New feature: configurable detection level for methods so that only methods with a certain access
modifier are checked for JavaDoc
- New feature: Ability to ignore methods of anonymous classes and inner classes
13 Mar 2007 Bug fixes and added functionality, tested against 6.0.4(6148):
- New feature: use templates to allow customization of generated JavaDoc.
- Bug: Generate JavaDoc for interface mentions class instead of interface
- Bug: Depth first in finding super method causes wrong methods in interface hierarchy to be compared
during inconsistency checks
- Known issue: Generating JavaDoc for Enum types fails
23 Jan 2007 Bug fixes and added functionality, tested against 6.0.2(6107) and 6.0.4(6148):
- Bug: Description of class implementing interface method without JavaDoc is "Overridden method
does not have javadoc" instead of "Method implementation does not have JavaDoc"
- Bug: Description of interface extending other interface and overriding method declaration without
JavaDoc is "Method implementation does not have JavaDoc" instead of "Overridden method does not
- Bug: Insertion of JavaDoc reference is mangled;
- Bug: JavaDoc reference is not recognized when it contains qualified package although class is in same
package as referenced class;
- Bug: Constructor without JavaDoc is interpreted as overridden method;
- Bug: Classes that extend each other should not need to have identical JavaDoc in constructors;
- Reported bug by Henne Huhu: NullPointerException while editing in Jsp;
- New feature: Inspection of missing JavaDoc on class level
- New feature: "Add reference to parent" to solve inconsistent JavaDoc between two methods and
keeping the exsisting JavaDoc
23 Dec 2006 Update to IntelliJ 6.0, including bug fixes and publication to plugins.intellij.net
27 Dec 2005 Initial build for IntelliJ 5.0