Java News from Friday, June 1, 2007

Bill Pugh of the University of Maryland has released FindBugs 1.2.1, an automated open source tool for finding potential bugs in Java code. This release fixes bugs and adds a static calendar detector\:

Even though the JavaDoc does not contain a hint about it, Calendars are inherently unsafe for multithreaded use. Sharing a single instance across thread boundaries without proper synchronization will result in erratic behavior of the application. Under 1.4 problems seem to surface less often than under Java 5 where you will probably see random ArrayIndexOutOfBoundsExceptions or IndexOutOfBoundsExceptions in sun.util.calendar.BaseCalendar.getCalendarDateFromFixedDate().

You may also experience serialization problems.

Using an instance field is recommended.

For more information on this see Sun Bug #6231579 and Sun Bug #6178997.

Excelsior has released JET 5.0, a Java virtual machine for Linux and Windows that uses a combination of a traditional native code compiler and just-in-time compilation from byte code. According to Dmitry Leskov, "the key new feature is the ability to leave the unused parts of the Java SE platform out of your application installer. 100% TCK compliance is maintained through on-demand downloading of the omitted at application run time. The result is substantial reduction in download size and disk footprint." JET costs start at $1200 and run up to $4500 depending on which version and how much support you want. Support is available by e-mail and Web site only.