1.0 Einführung
2.0 Bekannte Probleme und Einschränkungen
2.1
Java-Programme mit anderen Zeichen als denen des Lateinischen Alphabets 1 in Paket- oder Klassennamen ausführen
2.2 Fehlende Debug-Attribute
2.3 Unterbrechungspunkte setzen
2.4 Sofortige Codeersetzung verwenden
2.5 Scrapbook
2.6 Debug bei langsamen Verbindungen
2.7 Geprüfte Werte aktualisieren
2.8 Native Methoden überspringen, die E/A-Operationen ausführen
2.9 Nach Referenzen auf Konstantenfelder suchen
2.10
Java-Kompiliereinheiten außerhalb des Erstellungsklassenpfads
2.11 Beendigung von VM und von Prozessen auf IBM 1.3 JVM unter Linux
2.12 Aktionen zum Ändern von schreibgeschützten Dateien
2.13 Java-Code-Schablonen
2.14 Importverwaltung und Importe von Standardpaketen
2.15 Aktion 'Javadoc hinzufügen' für Felder
2.16 Javadoc-Kurzinfo im Java-Editor
2.17 HTML-Code > wird an Stelle von > in neuer Java-Klasse angezeigt
2.18 Ausführen oder Debug einer
Klasse in einem Projekt mit GB18030-Zeichen im Projektnamen nicht möglich
2.19 Debug von Stacküberläufen
nicht möglich
2.20 Einschränkung der Auswertung
2.21 Unterbrechungspunkte außerhalb des Erstellungsklassenpfads
2.22 Schnellkorrektur und Importe von
Standardpaketen
2.23 Die Aktionen Ausschneiden,
Kopieren und Einfügen funktionieren nicht bei verlinkten Ressourcen in Sichten, die Java-Elemente anzeigen
2.24
Java-Arbeitssets funktionieren nicht korrekt bei Elementen aus dem Container der JRE-Systembibliothek
2.25
JavaDoc kann nicht für Pakete mit GB18030-Zeichen im Namen generiert werden
2.26 Verlinktes Bearbeiten funktioniert
nicht korrekt im Überschreibmodus
2.27 Schablone für die Generierung von CATCH-Block-Code
muss mit einer neuen Zeile (newline) enden, wenn die letzte Zeile ein Zeilenkommentar ist
2.28 Problem beim Öffnen des Klassendateieditors
Der vorliegende Abschnitt enthält Informationen zu bekannten Problemen und Einschränkungen in Bezug auf Java-Entwicklungstools.
rt.jar
) ohne vollständige
Debug-Attribute kompiliert. Daher sind lokale Variablen und Methodenargumente für diese Klassen im Debugger nicht sichtbar.
Die sofortige Codeersetzung und Step-Operationen auf VMs von JDK 1.4.0 sind unzuverlässig.
Wenn Code im Scrapbook ausgeführt wird, der direkt oder indirekt einen System.exit(int)
aufruft, kann die Auswertung nicht abgeschlossen werden. Dies führt dazu, dass ein Stack-Trace für eine Ausnahme com.sun.jdi.VMDisconnectedException
im Scrapbook-Editor angezeigt wird.
Das Beenden einer Scrapbook-Seite, während eine Auswertung läuft, führt zum Anzeigen einer Ausnahme com.sun.jdi.VMDisconnectedException
im Scrapbook-Editor.
System.out
bzw. System.err
ausführen, wird die Ausgabe möglicherweise nicht unmittelbar angezeigt, es sei denn, die native Methode führt eine flush-Operation für den Ausgabepuffer aus.
Sie dürfen innerhalb eines Kommentars in einer Java-Code-Schablone nicht ${CURSOR}
verwenden
(Fenster > Benutzervorgaben > Java > Schablonen).
Die Importverwaltung übernimmt keine Importe von Standardpaketen. Beachten Sie, dass das Importieren von einem Standardpaket in JDK 1.4 nicht mehr unterstützt wird.
Die Aktion Javadoc hinzufügen funktioniert nicht für Felder.
Die Javadoc-Kurzinfo, die angezeigt wird, wenn der Cursor im Java-Editor auf Kennungen bewegt wird, behandelt Links innerhalb von Javadoc-Kommentaren nicht richtig.
Wenn Sie eine neue Java-Klasse erstellen, lautet der generierte Kommentar wie folgt:
Folgendes auswählen, um die Schablone für die erstellte Datei zu ändern: Fenster >
Benutzervorgaben > Java > Codegenerierung > Code und Kommentare.
Der HTML-Code für das Zeichen 'größer als' (>) wird an Stelle des eigentlichen Zeichens verwendet. Der
Kommentar sollte folgendermaßen aussehen:
Folgendes Auswählen, um die Schablone für die erstellte Datei zu ändern: Fenster >
Benutzervorgaben > Java > Codegenerierung > Code und Kommentare.
Die meisten Klassenbibliotheken unterstützen die Erstellung eines Systemprozesses
(mit java.lang.Runtime.exec(...)
) nicht korrekt, wenn die angegebene Befehlszeile
GB18030-Zeichen enthält. Diese Einschränkung bedeutet, dass der Debugger Anwendungen
nicht starten kann, wenn die von ihm generierte Befehlszeile GB18030-Zeichen enthält.
Wenn eine Debugsitzung beim Auftreten einer java.lang.StackOverflowError
-Ausnahmebedingung
(als Reaktion auf einen Unterbrechungspunkt für Ausnahmebedingungen) ausgesetzt wird, kann der Debugger
möglicherweise keine Debuginformationen von der Ziel-JVM abrufen. Darüber hinaus kann es sein, dass der
Debugger keine zuverlässige Interaktion mit der Ziel-JVM über diesen Punkt hinaus gewährleisten kann.
Der Debugger verwendet in der Ziel-JVM Threads zum Ausführen von Auswertungen (und zwar sowohl
von expliziten Auswertungen, die der Benutzer anfordert, wie auch von impliziten Auswertungen wie
zum Beispiel dem Aufruf von toString()
in der Sicht Variablen). Die JDI (Java
Debug Interface, Java-Debugschnittstelle) erfordert, dass der Thread, in dem eine Auswertung
ausgeführt wird, durch ein Benutzerereignis ausgesetzt werden muss (das bedeutet, durch eine
Unterbrechungspunkt- oder eine Step-Anforderung. Auswertungen können nicht für
Threads ausgeführt werden, die durch die Aktion 'Aussetzen' ausgesetzt wurden. Wenn
ein Unterbrechungspunkt für die Aussetzung der JVM und nicht nur für die Aussetzung eines
einzelnen Threads konfiguriert wurde, gilt außerdem, dass diejenigen Threads, die den Unterbrechungspunkt
nicht angetroffen haben, keinen gültigen Status zum Ausführen einer Auswertung aufweisen. Wird versucht,
eine Auswertung in einem Thread auszuführen, der keinen gültigen Status zum Ausführen einer
Auswertung aufweist, wird eine Fehlernachricht mit dem folgenden Inhalt angezeigt:
"Thread muss zum Ausführen des Methodenaufrufs durch Step oder Unterbrechungspunkt ausgesetzt sein".
Unterbrechungspunkte können nur für Java-Elemente erstellt werden, die im Erstellungsklassenpfad eines Projekts enthalten sind. Der Java-Debugger löscht automatisch Unterbrechungspunkte, wenn das ihnen zugeordnete Java-Element aus dem Erstellungspfad eines Projekts entfernt wird. Wenn das Java-Debug-Plug-in nicht geladen ist und eine Änderung des Erstellungspfads durchgeführt wird, werden derartige Unterbrechungspunkte im Arbeitsbereich beibehalten und können Fehler verursachen, wenn der Benutzer versucht, in der Sicht 'Unterbrechungspunkte' zu der Datei zu wechseln, die dem Unterbrechungspunkt zugeordnet ist.
Die Schnellkorrektur übernimmt keine Importe von Standardpaketen. Beachten Sie, dass das Importieren von einem Standardpaket in JDK 1.4 nicht mehr unterstützt wird.
Die Aktionen zum Ausschneiden, Kopieren und Einfügen funktionieren nicht bei verlinkten Dateien und Ordnern in Sichten, die Java-Elemente anzeigen. Dies schließt den Paket-Explorer ein. Dieser Fehler kann umgangen werden, wenn Sie diese Aktionen anstatt dessen von der Sicht 'Navigator' aus verwenden.
Die Anwendung eines Arbeitssets, das vollständig aus Elementen aus dem Container der JRE-Systembibliothek besteht, als Filter für die Sicht 'Pakete' kann dazu führen, dass die Anzeige im Paket-Explorer leer ist.
Die meisten Klassenbibliotheken unterstützen die Erstellung eines Systemprozesses
(mit java.lang.Runtime.exec(...)
) nicht korrekt, wenn die angegebene Befehlszeile
GB18030-Zeichen enthält. Da ein JavaDoc unter Verwendung der ausführbaren JavaDoc-Datei
erstellt wird, die mit JDK ausgeliefert wird, schlägt das Generieren des JavaDocs fehl, wenn
der Name des Pakets oder der Klasse GB18030-Zeichen enthält.
Das verlinkte Bearbeiten wird zum Umbenennen von Elementen innerhalb einer einzigen Kompiliereinheit und für Schablonen verwendet, in denen dieselbe Schablonenvariable mehrmals enthalten ist. Das verlinkte Bearbeiten funktioniert im Überschreibmodus nicht korrekt.
Wenn es sich bei der letzten Zeile in einer Schablone für die Generierung von CATCH-Block-Code um einen Zeilenkommentar handelt, muss die Zeile mit einer neuen Zeile (newline) beendet werden. Andernfalls endet die geschweifte abschließende Klammer in der Kommentarzeile und verursacht dadurch einen Kompilierfehler.
Wenn auf der Seite Plug-in-Entwicklung > Java-Erstellungspfadsteuerung die Benutzereinstellung "Klassenpfadcontainer verwenden" aktiviert wurde, ist es eventuell nicht möglich, einen Klassendateieditor für eine Klassendatei zu öffnen, die in einer JAR im Container "Erforderliche Plug-in-Einträge" enthalten ist. Eine Möglichkeit, diesen Fehler zu umgehen, besteht darin, die Klassendatei im Paket-Explorer zu erweitern. Dadurch wird die Struktur der Klassendatei so angezeigt, wie es normalerweise im Editor der Fall wäre. Eine andere Möglichkeit ist, die Quelle der JAR-Datei zuzuordnen, sofern eine ZIP-Datei mit dem Quellcode für die JAR verfügbar ist.
Führen Sie die folgenden Schritte aus, um die Quelle einer JAR im Container "Erforderliche Plug-in-Einträge" zuzuordnen:
(C) Copyright IBM Corporation 2000, 2003. All Rights Reserved. (C) Copyright IBM Deutschland GmbH 2000, 2003. Alle Rechte vorbehalten.