Seltsames Warning in eclipse 3.4.1/java 6

Hallo Leute

Ich verwende eclipse 3.4.1 und habe das JDK von Java 6 eingerichtet. Ich öffnen nun ein altes Projekt, dass noch mit Java 1.4 erstellt wurde, und dass ein Swing-GUI beinhaltet. Seltsamerweise bekomme ich nun bei folgender Zeile ein recht merkwürdiges Warning:

UIManager.setLookAndFeel(new WindowsLookAndFeel());

Die Warnung lautet:

Access restriction: The constructor WindowsLookAndFeel() is not accessible due to restriction on required library jdk1.6.0_06\jre\lib\rt.jar

Ursprünglich kam sogar ein Error - das habe ich allerdings auf Warning zurückgestuft.

Kann mir jemand erklären, was diese Meldung soll?

Was mir dabei aufgefallen ist: die obige Klasse hat keinen expliziten Konstruktor - auch die Superklassen nicht. Ansonsten ist die Klasse ganz normal public und lässt sich offensichtlich auch ganz normal instanzieren (der Code wird korrekt ausgeführt).

Jetzt kann ich natürlich eclipse so konfigurieren, dass es diese Probleme ignoriert - ist aber nicht schön. Vor allem wenn ich nicht verstehe, worüber sich eclipse in diesem speziellen Fall aufregt. Grundsätzlich möchte ich die Warnings ja sehen und ausbessern.

LG
Erwin

Hi,

versuchs mal mit
UIManager.setLookAndFeel(„com.sun.java.swing.plaf.windows.WindowsLookAndFeel“);

Gruss,
Herb

hallo

naja - deine lösung verhindert lediglich, dass eclipse das problem erkennt und ein warning ausgiebt. das geht auch mit einem no-warn-tag.

meine frage bezog sich eher auf die gründe, warum eclipse da auf die idee kommt, ein problem anzuzeigen. wenn’s einfach nur ein bug ist, kann ich damit leben. als extrem schreibfauler mensch würde ich gerne code schreiben, der auch längere zeit über stabil ist…

lg
erwin

Hi,

naja - deine lösung verhindert lediglich, dass eclipse das
problem erkennt und ein warning ausgiebt. das geht auch mit
einem no-warn-tag.

diese No-Wan Tags verwende ich nicht. Wenn der Compiler eine Warnung ausspuckt, dann hat das einen Grund…

meine frage bezog sich eher auf die gründe, warum eclipse da
auf die idee kommt, ein problem anzuzeigen. wenn’s einfach nur
ein bug ist, kann ich damit leben. als extrem schreibfauler
mensch würde ich gerne code schreiben, der auch längere zeit
über stabil ist…

Ich schätze mal das ist ein Bug bei dir. Bei mir spuckt Eclipse keine Warnung aus.
Was den stabilen Code angeht: Dazu solltest Du Dir eine Auflistung der installierten Look and Feels besorgen und dann prüfen, ob die von Dir gewünschte vorhanden ist. Und diese dann erst einsetzen.

Ich verwende übrigens immer den Klassennamen und nie eine direkte Instanz der LookAndFeel Klasse. Liegt daran, dass man den Klassennamen durch die Auflistung der LookAndFeels schon bekommt und so alles dynamisch handhaben kann.

Gruss,
Herb