Chris Seguin developed this software during 1999-2002, under his leadership it reached version 2.6.40. Since then Mike Atkinson has taken over, version 2.8 released in October 2003 has many major enhancements.

The software is free, and was provided "as is". (If you use it and find any bugs, then don't report them to us, add them to the JRefactory bug list on SourceForge. The backlog of bugs is gradually being worked on, but don't expect a fix the same day. Similarly, request for enhancements should be made to the Feature Requests tracker.

Supported IDEs:

The following IDEs are supported. Versions numbers of the IDEs are those that JavaStyle has been tested on.

jEdit (4.1final and 4.2pre11) - good support in latest version of JavaStyle.

Netbeans (3.6) - partial support, but not yet fully integrated.

JBuilder X - partial support, but not yet fully integrated

Ant (1.5.4) - pretty printing only

Stand-alone application - works well but has very limited editing support, its more a demonstration than anything else.

The next release will support more IDEs, and give a higher level of integration for them. Support for Eclipse, InteliJ and Emacs JDE has been requested. Note: there is partial support for several other IDEs in CVS (Cafe, elixir, jDeveloper, jooda and kawa)

Major Components

Pretty Printer/Beautifier is a tool that allows you to clean up the indenting and formatting of your java source code.

This tool has a powerful feature of being able to insert the appropriate javadoc comments so that the javadoc program does not generate error messages for missing fields. To simplify writing javadoc comments, some methods have javadoc comments automatically generated based on the name of the method.

JRefactory is a tool that allows you to perform the following refactorings:

It updates the java source files as appropriate.

This tool comes as a command line option with GUI or without, and as a plugin for the JEdit (still under development), JBuilder, NetBeans, and Elixir IDEs.

For JBuilder and Elixir you can switch from the UML diagram to the source code.

UML Diagrams come as part of the Refactoring support, they can be resized are useful for nativating round lots of code.

Printing provides the ability to print UML diagrams and print text files. Printing includes line numbering and may include syntax highlighting.

Coding Standards checking uses a modified version of PMD to check Java source code against a set a coding standard rules.

BugFinding uses the findbugs tool to find many common sources of bugs in code.

Cut & Paste detection looks for similar sections of source code throughout a set of files.

AST Viewer shows the result of the Java parser as an Abstract Syntax Tree. XPath queries may be performed on the tree.

Metrics gathers metrics about your java source code.

Line Number Tool a command line program to format a number of java source code files and generate an output file with line numbers. It can also combine a number of files together, and keep the numbering scheme between files. Chris found this useful for code reviews.

Stub Generator creates a file that allows the refactory tool to display Java JDK library classes (or other applications where you have access to the source code, but you don't intend to change the source code). This facility is used for the refactoring tool to show classes from 3rd party vendors in the refactoring GUI.

Elixir Extensions provides the ability to check in/check out files from Microsoft's Visual Source Safe from inside Elixir.

Development Utilities are various development utilities that I use to create builds of these tools.

Last Modified: 7 May 2004