FB18 - Das Forum für Informatik

fb18.de / Bachelorstudieng / PM Technische Informatik

GSS Blatt3 - Java Pakete importieren?

GSS Blatt3 - Java Pakete importieren? 2010-05-10 15:44
Anonymer User
Hallo. Ich bin noch nicht so fit in Sachen Java und Eclipse. Im neuen GSS Blatt sollen wir die auf der Vsis Seite mitverlinkten Pakete benutzen (z.B. de.uhh.informatik.visis.gss.tools). Ich sehe die Struktur innerhalb der Ordner und habe versucht, das zip zu entpacken und den Inhalt (also den de Ordner) in Eclipse zu schieben. Doch wenn ich dort versuche das ganze als Pakete zu nutzen (mit der import anweisung), steht da, dass es nicht erkannt wird (cannot be resolved). Ist irgendwo auch richtig, da die Struktur garnicht als Paketstruktur in Eclipse dargestellt wird, es sind einfach nur Ordner.

Gibt es einen Weg, wie ich das als ganze als Paketstruktur importieren kann, ohne alles per Hand umkopieren zu müssen? Bzw wie bringe ich Eclipse dazu, die Ordnerstruktur als Paketstuktur zu erkennen?

Danke schonmal im vorraus.

RE: GSS Blatt3 - Java Pakete importieren? 2010-05-10 16:42
Anonymer User
Problem gelöst. Man muss den Ordner nach dem Import einfach manuell in "src" schieben, dann werden die Pakete automatisch erstellt.

RE: GSS Blatt3 - Java Pakete importieren? 2010-05-10 17:49
Baum
Mal eine andere Frage zu diesem Blatt und dieser Aufgabe:

Kann es sein, dass sie peinlich einfach ist? Oder - wie sehe ich unsichtbare Race Conditions? Vielleicht ist ja alles falsch was ich da habe, doch wie finde ich es heraus? Also ich habe nichtmal 10min für die Implementierung gebraucht, da kann doch was nicht stimmen.

RE: GSS Blatt3 - Java Pakete importieren? 2010-05-10 18:17
tein
Kann es sein, dass sie peinlich einfach ist? [..] Also ich habe nichtmal 10min für die Implementierung gebraucht, da kann doch was nicht stimmen.
Die GSS-Aufgaben sind manchmal sehr dankbar, kommt schon hin.

RE: GSS Blatt3 - Java Pakete importieren? 2010-05-10 18:51
RaG
Du erkennst die Race Conditions daran, dass Druckbeginn und Druckende nich immer paarweise auftreten in dem Log. Durch platzieren von Tools.busyWait(int) an möglicherweise problematischen Stellen im Code kannst du das provozieren.

Ich hab übrigens _deutlich_ länger für die Aufgabe gebraucht…

RE: GSS Blatt3 - Java Pakete importieren? 2010-05-10 19:59
Baum
Du erkennst die Race Conditions daran, dass Druckbeginn und Druckende nich immer paarweise auftreten in dem Log. Durch platzieren von Tools.busyWait(int) an möglicherweise problematischen Stellen im Code kannst du das provozieren.

Ich hab übrigens _deutlich_ länger für die Aufgabe gebraucht…

Mit "unsichtbare Race Conditions" meine ich, dass ich diese nicht am Log ablesen kann. Druckbeginn und Ende laufen bei mir paarweise und korrekt ab. Da wo es erlaubt ist habe ich busyWait auch ausgiebig genutzt.

Ich beziehe mich da auf den Hinweis in der Aufgabe:
Bedenken Sie jedoch,dass das Ausbleiben von sichtbaren Problemen nicht bedeutet,
dass keine Race Conditions existieren

Soll ich mich also einfach damit zufrieden geben, dass ich möglicherweise existente Race Conditions nicht erkennen kann?

RE: GSS Blatt3 - Java Pakete importieren? 2010-05-11 08:33
korelstar
Ich beziehe mich da auf den Hinweis in der Aufgabe:
Bedenken Sie jedoch,dass das Ausbleiben von sichtbaren Problemen nicht bedeutet,
dass keine Race Conditions existieren

Soll ich mich also einfach damit zufrieden geben, dass ich möglicherweise existente Race Conditions nicht erkennen kann?
Es liegt nun einmal in der Natur von Race Conditions, dass sich viele von ihnen nur in ganz bestimmten Ausführungssituationen als Problem äußern. Später in der Wirtschaft bei größeren Software-Projekten kann es sehr ärgerlich sein, wenn Race Conditions erst im fertigen Produkt beim Kunden sichtbar werden und dort zu einem Problem werden. Die Ursachensuche gestaltet sich dann äußerst schwierig, da alleine das Zuschalten eines Debuggers das Timing während der Ausführung verändert und dadurch das Problem möglicherweise gar nicht mehr auftritt.

Ihr sollt euch also keineswegs damit zufrieden stellen, dass ihr Race Conditions nicht an der Ausgabe erkennen könnt (diese dient nur der Veranschaulichung eines möglichen Problems). Ihr sollt vielmehr ein Gespür dafür entwickeln, anhand des Codes zu erkennen, wo solche Situationen auftreten können. Weiterhin sollt ihr dabei lernen, wie die verschiedenen Mechanismen zur Verhinderung von Race Conditions funktionieren und angewendet werden. Wenn ihr dies verstanden und die Mechanismen korrekt angewendet habt, dann könnt ihr euch sicher sein, dass in eurer Lösung keine Race Conditions vorkommen. Das ist das Ziel der Aufgabe.

RE: GSS Blatt3 - Java Pakete importieren? 2010-05-11 23:54
julakali
Danke für die ausführliche Erläuterung.
Was mich wundert ist, das in der Übung gefragt wurde, ob wir java packages kennen, dann aber in der Aufgabe tiefere Kenntnis vom Java Monitor Konzept gefordert ist. Das ist ein Thema, was in SE1/2 völlig außen vor gelassen wurde und somit wohl von den meisten nicht beherrscht wird.