java.lang.ClassFormatError: trevis/Trevis (Illegal UTF8 string in
constant pool)
at java.lang.ClassLoader.defineClass0(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:486)
at
java.security.SecureClassLoader.defineClass(SecureClassLoader.java:111)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:248)
at java.net.URLClassLoader.access$100(URLClassLoader.java:56)
at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:297)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:286)
at java.lang.ClassLoader.loadClass(ClassLoader.java:253)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:313)
Exception in thread "main"
Obwohl das Projekt eine main class besitzt und vor der Benutzung von cvs
auch funktioniert hat.
Hat jemand ne Ahnung was da los ist?
Daniel
Das liegt daran, das cvs in den dateien rumschmiert. Und weil es
natürlich keine Ahnung hat, wie man Java-Bytecode schreibt macht es die
class-files kaputt. Abstellen kann man das auf verschiedenen Wegen:
1. sag dem cvs, das .class dateien binary sind -> also keinerlei
modifikation bedürfen
2. entferne alle magic-keys wie $Revision:$ etc. die ausserhalb von
komentaren stehen (in den quellfiles).
3. der goldene, beste, schönste weg überhaupt: Pack deine class-files in
ein jar und schmeiss das jar ins repository. hat noch den vorteil platz
zu sparen.
Gruß Paul
Irgendwie habe ich noch nie erlebt, daß jemand class-Files ins CVS
gestellt hat. Bin ich womöglich der einzige, der das nicht macht?
Ich stelle manchmal Icons als binary Einträge ein ...
> Irgendwie habe ich noch nie erlebt, daß jemand class-Files ins CVS
> gestellt hat. Bin ich womöglich der einzige, der das nicht macht?
Ne, glaube ich weniger... Ich kenne auch niemanden, der das tut. Die
benötigten jar-lib kann man ja gerne mit reinpacken (als binary), aber die
.class? Man würde in C++ ja auch nicht die .o mit einchecken... Abgesehen
davon, dass sie ja jederzeit regenerierbar sind, haben ja binary files in
CVS auch gewisse Nachteile (z.B. werden binaries nicht als diffs
gespeichert, so dass viele Versionen von binaries relativ viel Platz
schlucken).
Bis denne,
Ulf
Bei uns macht das auch niemand. Wir checken nur .jar ein. Manchmal gehts
aber mit dem Teufel zu...
Gruß Paul
Andreas Jaeger wrote:
> Irgendwie habe ich noch nie erlebt, daß jemand class-Files ins CVS
> gestellt hat. Bin ich womöglich der einzige, der das nicht macht?
> Ich stelle manchmal Icons als binary Einträge ein ...
Nein, bist du nicht, aber manche verstehen scheinbar nicht, das es sich dabei um
eine Versionierung für _SourceCode_ handelt. CVS macht einem selbst mit HTML-Dateien,
die ja eigentlich Textdateien sind, das Leben nicht gerade einfacher.
--
Heut' debug ich, morgen brows' ich, übermorgen cast' ich die Königin auf int.
(fit&ketZman)