http://www.javasoft.com/JDK-1.0/knownbugs.html (PC Press Internet CD, 03/1996)
Version 1.0
Java Developers Kit 1.0, Known Bugs
The known bugs are divided into the following categories:
You might also want to look at the list of frequently requested features for Java and the
Java Development Kit and the changes since
the last release. You may also want to review the list of known bugs in the Java and HotJava Alpha 3
release.
Please see Macintosh known
bugs for a list of known bugs that are specific to the Macintosh
Beta 1 release.
To report a bug that is not on this list, please see Submit a Bug Report
instructions.
- Programs with multiple threads do not exit (Microsoft Windows
95 and Windows NT only)
- Programs that start multiple threads will not exit under Windows
95 or Windows NT.
- Workaround: You can workaround this problem by either calling
System.exit(int exitCode) in the last thread running or by monitoring
the threads by calling Thread.join(). See java.lang.System or java.lang.Thread for more
information. (1234318)
- Ordered comparisons with NaN do not return false (Microsoft
Windows 95 and Windows NT)
- Greater than, less than, greater than or equal, or less than or
equal comparisons with Not A Number (Float.NaN or Double.NaN) should
always return false. Instead Not A Number evaluates as less than
NEGATIVE_INFINITY. (1240029)
- Conversion from Double.MAX_VALUE to an integer should produce
Integer.MAX_VALUE. (Microsoft Windows NT and Windows 95 only)
- Conversions from double to integer for very large double values,
such as Double.MAX_VALUE, should produce Integer.MAX_VALUE. (1240807)
- Conversion from Double.MAX_VALUE to a long should produce
Long.MAX_VALUE. (Microsoft Windows NT and Windows 95 only)
- Conversions from double to long for very large double values, such
as Double.MAX_VALUE, should produce Long.MAX_VALUE. (1240810)
- Appletviewer or other windowing program crashes in AWT.DLL on
startup. (Microsoft Windows 95 only)
- The AWT.DLL expects at least 256 colors available for display. If
you attempt to start a Java windowing program, such as Appletviewer,
on a computer that cannot display 256 colors, the program will crash
in the AWT.DLL module.
- Workaround: Set your display to at least 256 colors. (1240271)
- Transparent images draw incorrectly using ATI card (Microsoft
Windows 95)
- Images being drawn with transparent backgrounds will display with
their colors reversed (reversed video). (1225819)
- Cannot close copyright window (Microsoft Windows 95)
- In 640 X 480 screen resolution mode, the Microsoft Windows 95
launch bar partially covers the AppletViewer copyright window Accept
and Reject buttons.
- Workaround: Move the launch bar to the side of the desktop,
then select one of the AppletViewer copyright window buttons.
(1226411)
- Tag display dialog box does not display HTML Applet tag width and
height
- The Applet Viewer tag display dialog box does not display the HTML
Applet tag width and height values, instead it displays the applet's actual
width and height. (1231235)
- File URLs must be debugged in local directories
- Running the Applet Viewer in debug mode, file URLs currently throw
access violation exceptions or NumberFormatExceptions when referenced
outside the current working directory by the debugger. To work around
this problem, either set your working directory to the directory which
has the class to be debugged (the classes should be in the current
directory), or reference the applet from an http URL. (1231289)
- Compiler cannot distinguish the same class names in different
packages
- The javac compiler cannot distinguish between the same class name in
different packages. So the following code example will return a compiler
error:
package pkg;
import java.util.*;
public class Vector
{
private int i;
public Vector()
{
i = 1;
}
}
(1231283)
- Compiler does not distinguish between class names that are only
different by case (Microsoft Windows 95 and Windows NT only)
- The javac compiler does not distinguish between class names that
are the same except for the case of the name. So compiling the
following code example will return a compiler error:
/* file CompilerTest.java */
class CompilerTest
{
// class definition here
}
/* file compilertest.java */
class compilertest
{
// class definition here
void function(CompilerTest ct)
{
// do some work here
}
}
(1230037)
- Compiler will not compile a method with more than 63 local
variables.
- The javac compiler will not compile any method with more than
63 local variables. The minimum acceptable upper bound on local
variables has yet to be defined. (1240530)
- jdb can't "run" twice
- The Java debugger command "run" can only be invoked once. To
start a debugging session over, you must exit and restart jdb (or
restart the applet viewer with -debug). (1220930)
- Step command in jdb does not work consistently
- The debugger step command may fail if the current command attempts
to establish a socket connection. The step command may also fail if
it has been invoked more than three times in a row. (1221377,
1227931)
- javah generates invalid files for classes with an "_" in the
name. (Solaris only)
- When javah is generating header or stub files, it replaces "_" in
class names with "_0005f".
- Workaround: Do not use class names with "_" in them. (1235948)
- javah error "java.lang.Object not found: aborting" (Microsoft Windows
95 and Windows NT only)
- When javah is generating header or stub files, it requires access
to the standard Java class libraries. Javah, running on Microsoft
Windows, only searches the files and directories listed in the
CLASSPATH environment variable for class libraries. It does not
automatically add the Java Development Kit distribution directories to
the CLASSPATH.
- Workaround: Add the JDK class libraries file
(\java\lib\classes.zip) to the CLASSPATH environment variable. (1236498)
- Abstract Window Toolkit (java.awt)
- Input/Output Package (java.io)
- Asynchronous IO fails (Solaris 2.4)
- Asynchronous IO fails on the original shipping version of Sun
Solaris 2.4. This is due to a known problem with Sun Solaris 2.4. A
patch is available from Sun Microsystems Inc., patch number: OS patch
101945-34. (1199579)
- Net Package (java.net)
- FTP Protocol not working
- The FTP protocol handler has not been completed yet. When you
try to use it, you will receive the following exception:
java.net.MalformedURLException: unknown protocol: ftp
(1230799)
- Socket.close() does not close socket (Microsoft Windows 95 and
Windows NT only)
- Socket.close() does not close the TCP connection. The TCP
connection will close when you exit the program.(1234731)
- Util Package (java.util)
- java.util.Date.setDate()
- The method java.util.Date.setDate(int date) should recalculate
the month, and year when month is 11, when the parameter date is
greater than the number of days in the current month.
java.util.Date.setDate(int date) should recalculate the day of week.
(1226859, 1226864)
- java.util.Date.setMonth()
- The method java.util.Date.setMonth(int month) should recalculate
the year when the parameter month is greater than 11.
java.util.Date.setMonth(int month) should also recalculate the day of
week when the parameter month is greater than 11. (1229001, 1229000)
- java.util.Date.setYear()
- The method java.util.Date.setYear(int year) should recalculate
the day of week. java.util.Date.setYear(int year) does not
recalculate the month or date when going from a leap day, such as
29-Feb-1992, to a non-leap year. (1229004, 1231114)
- Workarounds for these java.util.Date bugs
- There is a very simple workaround for these java.util.Date bugs.
Simply create a new Date object with the correct information in it.
/* Create new date object for 28-Feb-1996 */
Date date1 = new Date(96, 01, 28);
/* Do some work here */
/* Need to set the date to one week after this date
* This will correctly create a new date of 06-Mar-96
*/
date1 = new Date( date1.getYear(),
date1.getMonth(),
date1.getDate() + 7,
date1.getHours(),
date1.getMinutes(),
date1.getSeconds() );
- Date.toString() gives different output on different platforms.
- Date.toString() returns different results on different platforms.
On Sun Solaris the result is:
Tue Jun 27 13:34:37 PDT 1995
On Microsoft Windows NT and Windows 95 the same date is converted to
the following string:
Tue Jun 27 13:34:37 1995
Note that Java does not print the time zone on Windows. (1212188)
Last Updated: 04 Mar 1996
Java Developers Kit