HOWTO · Java
StdDraw-Java-Import
Dieses Tutorial zeigt, wie Sie die stddraw in Java importieren.
Auf dieser Seite
Um StdDraw in einem Java-Projekt zu verwenden, laden Sie Princeton’s stdlib.jar herunter, fügen Sie es dem Build-Pfad des Projekts hinzu und importieren Sie die Klasse in Ihren Java-Quelltext. Ein JAR zu Eclipse hinzuzufügen und eine import-Anweisung zu schreiben, sind zwei getrennte Schritte: Durch den ersten wird die Bibliothek für Compiler und Laufzeitumgebung verfügbar; der zweite ermöglicht es Ihrem Quelltext, die Klasse mit ihrem Kurznamen anzusprechen.
Was StdDraw ist und was Sie benötigen
StdDraw ist eine Zeichen-API in Princeton’s StdLib, einer Bibliothek für den Einstieg in die Programmierung. Sie stellt Methoden bereit, um Formen und Text zu zeichnen und Farben festzulegen. StdLib ist eine externe Abhängigkeit und weder im Java JDK noch im JRE enthalten. Sie benötigen eine Kopie von stdlib.jar und ein Java-Projekt in Eclipse. In dieser Anleitung wird das Paket edu.princeton.cs.introcs verwendet, wie im folgenden Import zu sehen ist.
Das StdLib-JAR herunterladen
Öffnen Sie Princeton’s StdLib-Seite und suchen Sie in der Bibliotheksliste nach stdlib.jar. Laden Sie die JAR-Datei selbst herunter. Wenn Sie Abhängigkeiten zusammen mit dem Quelltext aufbewahren möchten, erstellen Sie in Ihrem Projekt einen Ordner namens lib und kopieren Sie die heruntergeladene Datei dorthin. So lässt sich der Speicherort des JARs leichter wiederfinden. Durch das Kopieren allein wird es jedoch nicht zum Build-Pfad von Eclipse hinzugefügt.
Die Bibliotheksliste auf Princeton’s Seite und der Download-Kontext für stdlib.jar.
stdlib.jar zu einem Eclipse-Projekt hinzufügen
Klicken Sie im Package Explorer mit der rechten Maustaste auf das Projekt und wählen Sie Properties. Öffnen Sie Java Build Path, wählen Sie Libraries und klicken Sie dann auf Add JARs…, wenn sich die Datei im Projekt befindet, oder auf Add External JARs…, wenn sie an einem anderen Ort liegt. Für den lib-Ordner des Projekts klappen Sie das Projekt auf und wählen lib/stdlib.jar aus. Klicken Sie auf Apply and Close. Das JAR sollte nun in den Klassenpfadeinträgen des Projekts erscheinen. Falls Eclipse die Registerkarte Order and Export anzeigt: Dort wird festgelegt, was abhängige Projekte erhalten; das JAR fügen Sie dort nicht hinzu.
Die Ansicht Libraries zeigt ein JAR im Klassenpfad des Projekts.
StdDraw in Java verwenden
Nachdem Sie das JAR hinzugefügt haben, importieren Sie die Klasse in der Quelldatei, die sie verwendet. Ein Zeichenprogramm kann zum Beispiel mit import edu.princeton.cs.introcs.StdDraw; beginnen und anschließend StdDraw.setPenColor(StdDraw.BLUE); sowie StdDraw.filledCircle(0.5, 0.5, 0.1); aufrufen. Damit wird die Zeichenfarbe auf Blau gesetzt und ein ausgefüllter Kreis mit Mittelpunkt (0.5, 0.5) und Radius 0.1 im Einheitsquadrat-Koordinatensystem von StdDraw gezeichnet. Der Import lädt das JAR nicht; dafür sorgt der Build-Pfad des Projekts. Umgekehrt macht das Hinzufügen des JARs den Import im Quelltext nicht überflüssig.
Mit dem folgenden kleinen Java-Programm können Sie prüfen, ob die Klasse im Klassenpfad des laufenden Programms gefunden wird. Es gibt das Ergebnis der Suche aus, ohne ein Grafikfenster zu benötigen:
Der Code und die angezeigten Bezeichnungen oder Ausgaben in diesem Abschnitt bleiben auf Englisch.
public class CheckStdDraw {
public static void main(String[] args) {
try {
Class.forName("edu.princeton.cs.introcs.StdDraw");
System.out.println("StdDraw is available on the classpath.");
} catch (ClassNotFoundException e) {
System.out.println("StdDraw is missing from the classpath.");
}
}
}
Häufige Einrichtungsfehler beheben
Wenn Eclipse meldet, dass edu.princeton.cs.introcs nicht existiert oder StdDraw nicht aufgelöst werden kann, prüfen Sie, ob das JAR unter Project Properties → Java Build Path → Libraries für dasselbe Projekt aufgeführt ist, in dem sich Ihr Quelltext befindet. Falls nicht, fügen Sie es erneut hinzu und übernehmen Sie die Änderung. Wenn Eclipse den Import akzeptiert, beim Starten des Programms aber eine fehlende Klasse meldet, prüfen Sie neben dem Build-Pfad des Projekts auch den Klassenpfad der Startkonfiguration. Sowohl beim Kompilieren als auch beim Starten muss die Abhängigkeit eingebunden sein.
Prüfen Sie die Schreibweise und Groß- und Kleinschreibung der Paket- und Klassennamen. Vergewissern Sie sich außerdem, dass Sie die heruntergeladene JAR-Datei hinzugefügt haben und nicht eine Webseite oder ein Archiv mit einer anderen Bibliothek. Wenn Sie das JAR verschieben oder umbenennen, aktualisieren Sie den zugehörigen Eintrag im Build-Pfad. Eine Java-import-Anweisung benennt lediglich eine Klasse, die dem Projekt bereits zur Verfügung steht; sie kann eine fehlende Abhängigkeit weder herunterladen noch reparieren. Sobald Build-Pfad und Quelltextimport stimmen, können die Zeichenaufrufe StdDraw direkt verwenden.