Name: rlT66838 Date: 09/08/97
I've defined a class with an accent in its name.
It compiles well, and creates the .class file
with the correct name, but when I try to use it
from another class, an error is thrown at runtime:
java.lang.NoClassDefFoundError: DocTextoEditar$L��nAImprimir
at DocTextoEditar$Dibujante.run(DocTextoEditar.java:230)
If I change the name to the class, all goes well.
I wasn't using any particular local, so I think it should be the en_US.
My keyboard is a standard Spanish Windows 95 keyboard. Accents and '��'
work well with all programs, even with java programs. The problem was:
- I wrote a program, some of the identifiers (class names, method
names, fields...) were in Spanish.
- Everything worked well, until I created a new (inner) class that
had a '��' (i acute) in its name. It was the first class with an accent
in its name (but not the firs identifier, I've created a lot of fields
and methods with accents). The file compiled without any error, but when
I tried to use the class (in another file), the java runtime told me
that there wasn't such a class.
I send you a piece of code (and the .class files generated with
javac) that produces the following error:
-----
D:\Datos\Ricardo\temp>java I��
873644852710
java.lang.NoClassDefFoundError: I��$E��
at I+��.<init>(I+��.java:7)
at I+��.main(I+��.java:5)
D:\Datos\Ricardo\temp>java -version
java version "1.1.3"
D:\Datos\Ricardo\ms>chcp
Tabla de c��digos activa: 850
-----
I'm using the JDK 1.1.3 on a Windows 95 machine.
Hope this helps.
class I�� {
E�� e�� = new E��();
public static void main(String[] args) {
System.out.println(System.currentTimeMillis());
E�� ee��= new I��().e��;
};
I��(){System.out.println(""+System.currentTimeMillis()+e��);}
class E�� {
E�� () { System.out.println(System.currentTimeMillis()); }
};
};
======================================================================