Name: siR10004 Date: 02/10/2004
Some JDK (b37 and earlier) classes have invalid 'Signature' attributes, which
don't conform to the syntax rules described in Section 4.4.4 of the JVM spec draft.
All these signatures have an extra '.' character.
It seems that reflection API and javac simply ignore this extra character.
Below is the list of classes and their signature attributes.
Class 'java.util.concurrent.ConcurrentHashMap$EntryIterator'
'Ljava/util/concurrent/ConcurrentHashMap<TK;TV;>;.Ljava/util/concurrent/ConcurrentHashMap$HashIterator;Ljav
a/util/Iter
ator<Ljava/util/Map$Entry<TK;TV;>;>;'
Class 'java.util.concurrent.ConcurrentHashMap$KeyIterator'
'Ljava/util/concurrent/ConcurrentHashMap<TK;TV;>;.Ljava/util/concurrent/ConcurrentHashMap$HashIterator;Ljav
a/util/Iter
ator<TK;>;Ljava/util/Enumeration<TK;>;'
Class 'java.util.concurrent.ConcurrentHashMap$ValueIterator'
'Ljava/util/concurrent/ConcurrentHashMap<TK;TV;>;.Ljava/util/concurrent/ConcurrentHashMap$HashIterator;Ljav
a/util/Iter
ator<TV;>;Ljava/util/Enumeration<TV;>;'
Class 'java.util.AbstractList$ListItr'
'Ljava/util/AbstractList<TE;>;.Ljava/util/AbstractList$Itr;Ljava/util/ListIterator<TE;>;'
Class 'java.util.EnumMap$EntryIterator'
'Ljava/util/EnumMap<TK;TV;>;.Ljava/util/EnumMap$EnumMapIterator<Ljava/util/Map$Entry<TK;TV;>;>;Ljava/util/M
ap$Entry<TK
;TV;>;'
Class 'java.util.EnumMap$KeyIterator'
'Ljava/util/EnumMap<TK;TV;>;.Ljava/util/EnumMap$EnumMapIterator<TK;>;'
Class 'java.util.EnumMap$ValueIterator'
'Ljava/util/EnumMap<TK;TV;>;.Ljava/util/EnumMap$EnumMapIterator<TV;>;'
Class 'java.util.IdentityHashMap$EntryIterator'
'Ljava/util/IdentityHashMap<TK;TV;>;.Ljava/util/IdentityHashMap$IdentityHashMapIterator<Ljava/util/Map$Entr
y<TK;TV;>;>
;Ljava/util/Map$Entry<TK;TV;>;'
Class 'java.util.IdentityHashMap$KeyIterator'
'Ljava/util/IdentityHashMap<TK;TV;>;.Ljava/util/IdentityHashMap$IdentityHashMapIterator<TK;>;'
Class 'java.util.IdentityHashMap$ValueIterator'
'Ljava/util/IdentityHashMap<TK;TV;>;.Ljava/util/IdentityHashMap$IdentityHashMapIterator<TV;>;'
Class 'java.util.WeakHashMap$EntryIterator'
'Ljava/util/WeakHashMap<TK;TV;>;.Ljava/util/WeakHashMap$HashIterator<Ljava/util/Map$Entry<TK;TV;>;>;'
Class 'java.util.WeakHashMap$KeyIterator'
'Ljava/util/WeakHashMap<TK;TV;>;.Ljava/util/WeakHashMap$HashIterator<TK;>;'
Class 'java.util.WeakHashMap$ValueIterator'
'Ljava/util/WeakHashMap<TK;TV;>;.Ljava/util/WeakHashMap$HashIterator<TV;>;'
Class 'java.util.TreeMap$EntryIterator'
'Ljava/util/TreeMap<TK;TV;>;.Ljava/util/TreeMap$PrivateEntryIterator<Ljava/util/Map$Entry<TK;TV;>;>;'
Class 'java.util.TreeMap$KeyIterator'
'Ljava/util/TreeMap<TK;TV;>;.Ljava/util/TreeMap$PrivateEntryIterator<TK;>;'
Class 'java.util.TreeMap$SubMapEntryIterator'
'Ljava/util/TreeMap<TK;TV;>;.Ljava/util/TreeMap$PrivateEntryIterator<Ljava/util/Map$Entry<TK;TV;>;>;'
'java.util.TreeMap$ValueIterator'
'Ljava/util/TreeMap<TK;TV;>;.Ljava/util/TreeMap$PrivateEntryIterator<TV;>;'
Class 'java.util.HashMap$EntryIterator'
'Ljava/util/HashMap<TK;TV;>;.Ljava/util/HashMap$HashIterator<Ljava/util/Map$Entry<TK;TV;>;>;'
Class 'java.util.HashMap$KeyIterator'
'Ljava/util/HashMap<TK;TV;>;.Ljava/util/HashMap$HashIterator<TK;>;'
Class 'java.util.HashMap$ValueIterator'
'Ljava/util/HashMap<TK;TV;>;.Ljava/util/HashMap$HashIterator<TV;>;'
Class 'java.util.LinkedHashMap$EntryIterator'
'Ljava/util/LinkedHashMap<TK;TV;>;.Ljava/util/LinkedHashMap$LinkedHashIterator<Ljava/util/Map$Entry<TK;TV;>
;>;'
Class 'java.util.LinkedHashMap$KeyIterator'
'Ljava/util/LinkedHashMap<TK;TV;>;.Ljava/util/LinkedHashMap$LinkedHashIterator<TK;>;'
Class 'java.util.LinkedHashMap$ValueIterator'
'Ljava/util/LinkedHashMap<TK;TV;>;.Ljava/util/LinkedHashMap$LinkedHashIterator<TV;>;'
======================================================================
- duplicates
-
JDK-4942991 Signatures for nested classes contain redundant information
- Resolved
- relates to
-
JDK-5003916 (reflect) 24 classes from java package cause GenericSignatureFormatError
- Closed