Dienstag, 15. September 2009

java.lang.NoSuchMethodError: java/lang/String.isEmpty()Z

Die Methode String.isEmpty() ist (wie in der JavaDoc unschwer ersichtlich) zwar erst ab Java 1.6 verfügbar, dennoch ist es möglich, Programme mit Compiler compliance level 1.5 (bei einem 1.6er JDK) zu compilieren, ohne dass der Compiler die Methode ankreidet. Erst beim versuch, die Methode in einer Umgebung mit Java 5 laufen zu lassen äußert sich der Fehler durch die, in der Überschrift genannte Exception. Sollte man also nicht 100%ig sicher sein, welche JRE auf der Zielumgebung läuft so ist weiterhin das gute alte .equals("") bzw. das ab prüfen über die Länge die sicherere Variante.