ohne "package ch1" runs.

Da es ja ohne das package ch1 läuft, ist das Problem einfach nur das package bzw. das Verständnis, wie alles zusammen hängt.

Die Package Struktur der Java Klassen wird durch Verzeichnisse wieder gegeben. Wenn etwas in dem package ch1 ist, dann muss es auch in dem Verzeichnis ch1 liegen (das ist bei Dir der Fall). Aber das Grundverzeichnis der Sourcen ist das übergeordnete Verzeichnis.

Also:
  • statt per cd bis in das ch1 Verzeichnis zu gehen, musst Du nur in das übergeordnete Verzeichnis gehen.
  • Die java Datei muss dann incl. dem Pfad ch1 angegeben werden: javac ch1\BottleSong.java
  • Beim Aufruf wird der Klassenname incl. Package angegeben: java ch1.BottleSong

Das wäre das richtige Vorgehen wenn Du es mit Package ch1 laufen lassen willst.
 
Vielen Dank für Ihre Antwort.
Sehr geehrte Mitglieder,
Auf Eclipse möchte ich den Code so verwenden, dass ich 1723365042922.png drucke und alles glatt läuft, ohne dass ich "package ch1" von allen Klassen/Programmen löschen muss. Was ist zu tun bitte. Gibt es eine Lösung? Vielleicht dir Richtige Frage ist: Wie / wo muss ich den Package erstellen, damit alle Programme mit "package ch1" auf Linie 1 funktionieren? 1723365354892.png1723365487131.png
 
Auf Eclipse möchte ich den Code so verwenden, dass ich Anhang anzeigen 23058 drucke und alles glatt läuft, ohne dass ich "package ch1" von allen Klassen/Programmen löschen muss. Was ist zu tun bitte. Gibt es eine Lösung? Vielleicht dir Richtige Frage ist: Wie / wo muss ich den Package erstellen, damit alle Programme mit "package ch1" auf Linie 1 funktionieren?

Da Du mehrere Klassen hast, die betroffen sind, ist es evtl. am einfachsten, das manuell zu machen:
1. Das package ch1 anlegen. Dazu einfach mit der rechten Maustaste im Package Explorer auf "(default package)" klicken und dann "New" -> "Package" auswählen. In dem Popup dann den Namen angeben: ch1 und bestätigen.
2. Im Anschluss kannst Du alle Klassen per Drag & Drop in das neue Package verschieben.

Aber dies ist auch eine gute Stelle, um die Stärken einer Entwicklungsumgebung zu sehen. Eclipse bietet sehr viele Dinge, die einem Entwickler helfen. Daher wäre mein Tipp: Probiere das mal aus.

Wenn Du in einer Klasse das package nicht auskommentiert hast, dann ist ja das ch1 rot unterstrichen. Damit zeigt Dir Eclipse an: Hier ist etwas falsch.
Geh mit der Maus auf das rot unterstrichene ch1 und warte kurz: Es kommt dann ein Popup.
Diese Fehler-Popups haben neben der Fehlermeldung oft auch sogenannte Quick Fixes. Ein Quick Fix sollte sein "Move xxxx.java to package ch1" als blauer Link. Klick einfach auf diesen Link und Eclipse erstellt das package so notwendig und verschiebt die Datei.
 
Mit der zusätzlichen Information, dass es von
GitHub - mifhud/head-first-java-3rd at main
kommt, ergibt sich noch ein etwas anderes Bild.

Hier hast Du ein Gradle Projekt und das solltest Du auch verwenden. Also das ganze Projekt herunter laden um dann das Gradle Projekt auch zu öffnen.

Also z.B. per Download ZIP oder per git herunter laden. Wenn man git nutzt, dann aufpassen - da sind halt zwei Branches und du brauchst den main Branch mit den build.gradle und src/ und so..

Wenn Du das hast (egal wo), dann kannst Du in Eclipse über "Import" -> "Gradle/Existing Gradle Project" das Projekt importieren.
(Und da gibst Du dann das Verzeichnis an, in dem auch das build.gradle zu finden ist.)

Das könnte wichtig werden in späteren Kapiteln, wenn es auch Unit Tests gibt und so.
 

Zurück
Oben