Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
Ein Programm auf zwei verschiedenen Rechnern (einmal Mac und einmal Windows):
Nun habe ich ein @Override im Programm eingeführt.
Auf dem Windowsrechner funktioniert es auf dem Mac wird ein Fehler geworfen (" Multiple makers at this line")
*verschieb nach IDEs unt Tools*
Welche Java Version auf dem Mac und auf Windows und markiert das Override eine Methode der Superklasse, oder eines Interfaces?
Der genau StackTrace wäre übrigens hilfreich.
@Override
public int compareTo(RestrictionResult restrictionResult)
{
return index.compareTo(restrictionResult.getIndex());
}
Ist alles richtig so. Und wie gesagt, unter Windows läuft es!
Einen Stacktrace bekomme ich so nicht! Es wird nur diese Fehlermeldung aufgezeigt! Compilieren ist kein Problem!
Multiple markers at this line
- the method compareTo(RestrictionResult) of type RestrictionResult must override a superclass method
- implements java.lang.Comparable <business.logic.query.Restriction Result>.compareTo
Bei beiden Rechnern ist Java 6.x aufgespielt.
Also warum funktioniert es unter Windows und unterm Mac nicht ? :roll:
Und das kompiliert? Sehr seltsam. Vor allem... widerspricht sich das nicht etwas? Das zweite weist aufs Überschreiben hin und das erst bemängelt, dass überschrieben werden soll...?
Methode wird auch aufgerufen (unter mac) und wirft auch keinen Fehler...
Da ich diese Klasse nicht selber implementiert habe, sondern ein Teammitglied, kann ich nicht sagen, wie sich das im Programm auswirkt!
Nach dem Umstellen ist der Fehler zwar weg, aber ich bekomme nun folgenden Fehler:
Exception in thread "main" java.lang.UnsupportedClassVersionError: Bad version number in .class file
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:675)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:260)
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:316)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:280)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:374)
Was muss ich machen/ändern/löschen?
- Noch der Hinweis: Habe das Projekt erneut vom SVN geladen
Eine Idee..?
So läuft: ich musste noch ein paar Einstellungen bei eclipse ändern.
Mach mal ein Clean, sieht so aus als ob deine IDE wieder auf 1.5 arbeitet und versucht mit 1.6 kompilierte class Dateien auszuführen.
Nutzt du denn keine Buld Tool wie zB. Maven?
Da kann man in den Prohekteinstellungen festlegen welche compiler Version zu nutzen ist, Eclipse hält sich daran.