Java News from Monday, May 24, 2004
The Eclipse Project has posted the ninth
milestone beta of Eclipse 3.0,
an open source integrated development environment (IDE) for Java.
It also doubles as a base platform for your own applications,
an alternative to the AWT and Swing, and
a powerful floor wax and dessert topping.
M9 adds early access support for Java 1.5
in the form of replacement JDT plug-ins that can be installed into Eclipse 3.0. However, this will not be finished
in time to be for the Eclipse 3.0 release.
The most impressive new feature in M9 is code folding. You can show and hide method bodies, block bodies, etc. to more quickly navigate a class. Other
new features in M9 include:
- Selecting File > Open Workspace switches to a different workspace after saving the current one. You can change the look annd feel to resenable Eclipse 2.1
- The progress dialog allows background-enabled operations to be completed in the background.
- Improved progress view
- The SWT Browser widget is now available on the Mac.
- The SWT StyledText widget now supports italic fonts.
- SWT now provides access to the images that appear in native message dialogs, so that you can use them in your own dialogs.
- Multiple different encodings are now supported at the same time. Eclipse will automatically determine the correct encoding for many kinds of files. Failing that, you can explicitly set a specific encoding at the project, folder, or file level from the resource's Properties dialog.
- Text selection colors
- Text selection foreground and background colors are now customizable in the text editor and the Java editor.
- The text component provides the infrastructure for collapsible text regions in text editors. The Java editor uses this infrastructure and allows the user to collapse method bodies, inner types, Javadoc comments, and import statements.
- Search and replace supports regular expressions
- Maximize and restore buttons have been added to the toolbars of help views.
- The Help UI now has better support for bi-directional languages.
- The Java editor can now highlight source code according to its semantics (for example: static fields, local variables, static method invocations).
- Java working sets can now contain non-Java projects as well as Java projects.
- Extract method from inner types refactoring
- Placing the cursor on the return type of a method highlights all method exit points.
- Copying or cutting Java code also captures information about which import declarations are needed by the copied code. The needed imports are now added automatically when the code is pasted.
- More quick fixes
- Format multiple files
- The format action is also enabled on Java projects, source folders, and packages. When invoked, all contained source files will be formatted according to the currently configured formatter settings.
- Java search results can be filtered for Javadoc comments, import statements, read accesses, and write accesses.
- The Java compiler can now flag an empty statement used as the body of a control flow statement.
- Inclusion pattern for source folders
- New feature patch wizard
- CVS checkout wizard
- CVS commit set layout
- Improved CVS password management
- Command line compatible 'ext' support
- You can now specify a file encoding for a particular CVS repository. This is needed when the encoding differs from what is being used locally by Eclipse, and ensures that file names, commit comments, etc. are properly translated.
- CVS date tags
- CVS update wizard
- Java breakpoints are automatically updated when you perform Java refactorings.
- Debugging in current perspective
- Debugging can be performed in any perspective.
"M9 is the final milestone build of the Eclipse 3.0 development cycle,
and marks the official start of the 3.0 endgame." If all goes according to plan (Yeah, that'll happen.) 3.0 will be released the week of June 28.
Oliver Burn has released
Checkstyle 3.4, a lint-like tool that checks Java code
for adherence to various coding standards.
Version 3.4 adds about a dozen new checks including
- BooleanExpressionComplexity
- ClassDataAbstractionCoupling
- ClassFanOutComplexity
- NPathComplexity
- Verifying
that
default is a last label in a switch
statemen
- All classes define constructors
- Every variable is declared in its own statement and on its own line References to non-static fields and methods should be quailified. Padding in empty
for
loop initializers.
- UnnecessaryParentheses
Checkstyle is published under the LGPL.
Subversion 1.0.4 has been released. Subversion is an open source version control system designed to replace CVS, the open source version control system we've all learned to hate. 1.0.4 is a bug fix release. "Of particular note this release fixes data loss that may occur on case
insensitive file systems (e.g. Win32)."
ObjectWeb has released Speedo 1.0, a free (LGPL)
implementation of the Java Data Objects (JDO) API.