Attached is a patch for the classes in the "kernel" module of "classlib" that needed to be changed.
I can easily to the rest of these, if you want. I've been monitoring the list since it began and this seemed like a nice simple task to help with. If it would be easier, I can create a JIRA bug and attach the patches there. -Nathan ----- Original Message ----- From: "Magnusson, Geir" <[EMAIL PROTECTED]> Date: Thursday, February 2, 2006 7:52 pm Subject: RE: FYI: 100+ files do not fully comply with serialVersionUID spec > We look forward to a patch. :) > > -----Original Message----- > From: Zakharov, Vasily M [mailto:[EMAIL PROTECTED] > Sent: Thu Feb 02 15:15:17 2006 > To: harmony-dev@incubator.apache.org > Subject: FYI: 100+ files do not fully comply with serialVersionUID > spec > Hello, all, > > There're some classes in API library that are Serializable and have > serialVersionUIDs, but those serialVersionUIDs are not marked > private as > recommended by Serialization Specification. The full proper signature > for serialVersionUID is 'private static final long', unless the API > specification for the particular class specifies otherwise. > > The files affected are in directories java/io, java/lang, java/math, > java/nio, java/nio/channels, java/nio/charset, java/security, > java/text,java/util/regex, java/util/zip. > > Looks like the next step is either simply fix the files now or file a > 100+ file bug reports. :) > I think the former is preferable. > > With best regards, > > Vasily Zakharov > Intel Middleware Products Division >
Index: kernel/src/main/java/java/lang/Class.java =================================================================== --- kernel/src/main/java/java/lang/Class.java (revision 374577) +++ kernel/src/main/java/java/lang/Class.java (working copy) @@ -66,7 +66,7 @@ * */ public final class Class implements java.io.Serializable { - static final long serialVersionUID = 3206093459760846163L; + private static final long serialVersionUID = 3206093459760846163L; /** * Answers a Class object which represents the class named by the argument. Index: kernel/src/main/java/java/lang/String.java =================================================================== --- kernel/src/main/java/java/lang/String.java (revision 374577) +++ kernel/src/main/java/java/lang/String.java (working copy) @@ -31,7 +31,7 @@ * @see StringBuffer */ public final class String implements Serializable, Comparable, CharSequence { - static final long serialVersionUID = -6849794470754667710L; + private static final long serialVersionUID = -6849794470754667710L; /** * An PrintStream used for System.out which performs the @@ -80,7 +80,7 @@ */ private static final class CaseInsensitiveComparator implements Comparator, Serializable { - static final long serialVersionUID = 8575799808933029326L; + private static final long serialVersionUID = 8575799808933029326L; /** * Compare the two objects to determine Index: kernel/src/main/java/java/lang/Throwable.java =================================================================== --- kernel/src/main/java/java/lang/Throwable.java (revision 374577) +++ kernel/src/main/java/java/lang/Throwable.java (working copy) @@ -38,7 +38,7 @@ * @see RuntimeException */ public class Throwable implements java.io.Serializable { - static final long serialVersionUID = -3042686055658047285L; + private static final long serialVersionUID = -3042686055658047285L; /** * The message provided when the exception was created. Index: kernel/src/main/java/java/lang/StackTraceElement.java =================================================================== --- kernel/src/main/java/java/lang/StackTraceElement.java (revision 374577) +++ kernel/src/main/java/java/lang/StackTraceElement.java (working copy) @@ -25,7 +25,7 @@ * @see Throwable#getStackTrace() */ public final class StackTraceElement implements java.io.Serializable { - static final long serialVersionUID = 6992337162326171013L; + private static final long serialVersionUID = 6992337162326171013L; String declaringClass, methodName, fileName;