# Inhalt Dieses Inhaltsverzeichnis kann nur auf der Gitlab-Seite benutzt werden und nicht in der Präsentationsansicht. * [Projekt anlegen](#projekt-anlegen) * [Zip-Projekt importieren](#zip-projekt-importieren) * [Schäfers Conventions installieren](#schäfers-conventions-installieren) * [Schriftgröße ändern](#schriftgröße-ändern) * [Workspace wechseln](#workspace-wechseln) * [Assertions aktivieren](#assertions-aktivieren) * [Für ein einzelnes Projekt](#für-ein-einzelnes-projekt) * [Für den ganzen Workspace](#für-den-ganzen-workspace) * [JUnit aktivieren](#junit-aktivieren) * [FAQ](#faq) * [Wo finde ich die Praktikumsaufgaben?](#wo-finde-ich-die-praktikumsaufgaben) * [Wie importiere ich Praktikumsaufgaben?](#wie-importiere-ich-praktikumsaufgaben) * [Was ist ein Workspace?](#was-ist-ein-workspace) * [Wie organisiere ich meine Praktikumsaufgaben?](#wie-organisiere-ich-meine-praktikumsaufgaben) * [Wie organisiere ich die Aufgaben aus dem Tutorium?](#wie-organisiere-ich-die-aufgaben-aus-dem-tutorium) --- ## Projekt anlegen Folgendem Pfad folgen: File -> New -> Java Project Nun in dem Feld `Project name` einen sinnvollen Namen eintragen, zum Bespiel `tutorium-1`. **Wichtig** Existiert in dem Workspace-Ordner bereits ein Projekt mit dem gleichen Namen dann wird die Erzeugung fehlschlagen. Dann unten auf `Next >` klicken und im Folgenden Dialog unten auf `Finish`. Jetzt müsst ihr ein Package erzeugen. Dafür folgendem Pfad, in dem `Package Explorer`, folgen: Project Folder (right-click) -> New -> Package In dem Dialog einen sinnvollen Namen für das Package wählen, zum Beispiel `cards`. Dann muss in dem Package eine Klasse erzeugt werden: cards (right-click) -> New -> Class In dem Dialog in dem Feld `Name` einen sinnvollen Namen für die Klasse eintragen, zum Beispiel `Deck`. Mit dem Klick auf `Finish` jetzt die Klasse erzeugen. --- ### Zip-Projekt importieren Zuerst ein [Projekt anlegen](#projekt-anlegen). Danach den heruntergeladenen Zip-Ordner entpacken. Den Inhalt des Zip-Ordners dann in den `src`-Ordner eures neu erzeugten Projekts kopieren. Am Ende das Kontextmenü eures Projektes mit dem Rechtsklick öffnen und `Refresh` auswählen. Jetzt sollten die Packages der Aufgabe bei euch im `Project Explorer` zu sehen sein. --- ## Schäfers Conventions installieren Um für die Abnahme der Praktika ein optimal konfiguriertes Eclipse zu haben gibt es eine [Konfiguration](https://git.haw-hamburg.de/pm1-tutorium/vorkurs/shf-conventions). Auf der Gitlab seite hinter dem Link ist auch eine Anleitung wie man die Datei importiert. **Wichtig** Die Einstellungen gelten immer nur für einen Workspace. Wenn ihr einen neuen Workspace anlegt müsst ihr auf die Einstellungen erneut importieren. --- ## Schriftgröße ändern Folgendem Pfad folgen: Window -> Preferences General -> Appearance -> Colors and Font Java -> Java Editor Text Font Dann in der Toolbar rechts auf `Edit` klicken. Für die Abnahme bei Schäfers dann die Schriftgröße auf `>=18` stellen. Nach der Abnahme in dem gleichen Fenster auf `Reset` klicken um die Schriftgröße zurückzusetzen. Um die Schriftgröße im Editor zu verändern kann auch alternativ `STRG` + `+` zum Vergrößern und `STRG` + `-` zum Verkleinern der Schriftart benutzt werden. --- ## Workspace wechseln Folgendem Pfad folgen, wenn der Workspace noch nie in Eclipse geöffnet wurde: File -> Switch Workspace -> Other Dann in dem Dialog auf `Browse` klicken und euren Workspace-Ordner finden. Mit einem Klick auf `Launch` wird Eclipse mit diesem Workspace neu gestartet. Folgendem Pfad folgen, wenn der Workspace `Tutorium` schonmal in Eclipse geöffnet wurde: File -> Switch Workspace -> Tutorium ## Assertions aktivieren ### Für ein einzelnes Projekt Um für ein Projekt die Assertions zu aktivieren muss bereits ausführbarer Code, also eine Klasse mit einer `main`-Methode. Dann muss das Programm einmal ausgeführt werden, damit man die Run-Configuration bearbeiten kann. Dafür folgendem Pfad, in dem `Package Explorer`, folgen: Project Folder (right-click) -> Run As -> Run Configurations... Nun erscheint ein Dialog. Links in der Liste muss die Klasse ausgewählt sein, in der die `main`-Methode steht. Ist die Klasse nicht in der Liste aufgeführt, noch einmal das Programm ausführen. Dann in dem mittleren Bereich den Tab `Arguments` auswählen. Jetzt muss in dem Feld `VM arguments` folgendes eingetragen werden: -ea Jetzt sind Assertions für das Projekt aktiviert. --- ### Für den ganzen Workspace Folgendem Pfad folgen: Window -> Preferences Java -> Installed JREs Nun erscheint in der Mitte eine Liste von installierten Java Runtime Environments (JREs), vor einem der JREs sollte ein Haken sein. Das JRE mit dem Haken anklicken, dann rechts in der Toolbar `Edit` auswählen. Dann in dem Feld `Default VM arguments` folgendes eintragen: -ea Jetzt sind Assertions für den ganzen Workspace aktiviert. --- ## JUnit aktivieren Folgendem Pfad folgen, in dem `Package Explorer`, folgen: Project Folder (right-click) -> Build Path -> Add Libraries Nun erscheint ein Dialog. In der Liste in der Mitte `JUnit` auswählen und auf `Next >` klicken. Dann bei dem Dropdown-Menü `Junit library version` die Version `JUnit 4` auswählen. Jetzt auf `Finish` klicken. Danach sollte in dem Project Folder unter der `JRE System Library` die Library `JUnit 4` erscheinen. Falls dann immer noch ein Fehler erscheint, dann über den Fehler hovern und den Quickfix mit dem Modulepath auswählen. Damit Junit 4 richtig funktioniert muss auch eine `module-info.java`-Datei existieren. Diese sollte bei Projekterzeugung automatisch generiert werden. Befindet sich die Datei noch nicht im Projektverzeichnis, dann muss sie noch erzeugt werden: Source Folder (right-click) -> New... -> File In dem folgenden Dialog als `File name` `module-info.java` eintragen und mit dem Klick auf `Finish` die Erzeugung bestätigen. In die Datei muss nun folgender Text eingetragen werden: ```java # In src > module-info.java module TutoriumX { requires junit; } ``` **Wichtig** Ersetzt `TutoriumX` mit dem Namen eures Projekts! ## FAQ ### Wo finde ich die Praktikumsaufgaben? Die Aufgaben liegen in dem [Pub-Verzeichnis](https://users.informatik.haw-hamburg.de/~schafers/LOCAL/S20S_P1) in dem `CODE`-Ordner. ### Wie importiere ich Praktikumsaufgaben? Ihr ladet am besten die einzelnen Aufgaben als Zip-Dateien herunter und [importiert sie als Zip-Projekt](#ein-zip-projekt-importieren). ### Was ist ein Workspace? Ein Workspace wird genutzt um mehrere zusammenhängende Projekte zu organisieren. In eurem Betriebssystem ist ein Workspace einfach ein Ordner in dem dann eure Projekte gespeichert werden. Man kann Einstellungen für einen Workspace machen, die gelten dann für alle Projekte in dem Workspace. ### Wie organisiere ich meine Praktikumsaufgaben? Es ist sinnvoll für jedes Aufgabenblatt einen eigenen Workspace zu erstellen. Alle Aufgaben der Praktika in einem Workspace zu haben wird wahrscheinlich schnell unübersichtlich, da es pro Aufgabenzettel um mehrere Projekte gibt. ### Wie organisiere ich die Aufgaben aus dem Tutorium? Erstelle dir einen Workspace nur für das Tutorium. Für jeden Termin erstelle dann ein neues Projekt. Für jeden Aufgabenbereich erstelle dann ein eigenes Package in dem Projekt für den jeweiligen Termin.