Re: Maximum Length for a Java Class Name ?
Me:
Well, I think the bytecode verifier will prevent against spaces in
names, but with other char, say 'x', or simply with randomly generated
long name, why not?... ;-)
Checked that, and it appears to me now, that, as Chris suggested, spaces
are also allowed by recent class verifiers (even with -Xfuture option
classes with only spaces in names are accepted).
I tried to find any formal specification on verification which states
that, but I haven't found anything stating it directly, neither in JLS,
nor in JVMS, except a single non-normative fragment from the latter
concerning verifications performed by the verifier:
"? Checking that all field references and method references in the
constant pool have valid names, valid classes, and a valid type descriptor."
It is not about class names, it's on method and field references names
only, and even for them, it is not clear to me what a "valid names"
means here?...
So, it's better to assume, that on JVM level, any class name (excluding
maybe empty, and incorrectly encoded one) is allowed.
P.S.
There is also a mistake in my advice to the OP, the maximum class name
length is 65535 (not 65536) characters, sorry for that.
piotr