Packages erstellen mit Java-Editor

Mar_7596

Mitglied
Hallo zusammen,
ich beschäftige mich seit einer Weile mit Java. Jetzt möchte ich die Erstellung von eigenen Packages lernen. Also das ablagen eigener Klassen in eigene Pakete.
In meinem Lehrbuch steht das ich zu Beginn einer Java-Datei die package-Anweisung schreieben muss ("package jav05c.kapitel1;"). Dann erstelle ich die Klasse "MidiOutDevice".

Zitat aus dem Buch "Wenn eine Klasse in einem Paket abgelegt werden soll, so muss die java-Datei immer mit dem Parameter "-d" - directory - kompiliert werden, mit dem ein Zielverzeichnis angegeben wird. Auf den Parameter "-d" hat eine Pfadangabe zu folgen."

Über die Eingabeaufforderung (CMD) habe ich versucht die Klasse mit directory Parameter zu kompilieren, allerdings klappt das bei mir nicht. Warum nicht??
Im Anhang habe ich Sceenshorts von meiner Java-klasse im Editor, meinem Zielverzeichnis und der Fehlermeldung von der CMD.
Über jede Art von Hilfe bin ich dankbar.
Mit freundlichen Grüßen,
Marius
 

Anhänge

  • JavaEditor mit Klasse - MidiOutDevice.PNG
    JavaEditor mit Klasse - MidiOutDevice.PNG
    247,8 KB · Aufrufe: 23
  • Zielverzeichnis.PNG
    Zielverzeichnis.PNG
    75,4 KB · Aufrufe: 21
  • CMD- Fehlermeldung.PNG
    CMD- Fehlermeldung.PNG
    36,7 KB · Aufrufe: 22

Mar_7596

Mitglied
Das verstehe ich nicht so ganz. Ich habe es so verstanden, dass in meinem Zielverzeichnis (Zielordner "eigeneKlassen") das Paket jav05c mit dem Unterpaket kapitel1 erzeugt wird wenn ich die Klasse mit dem -d Argument kompiliere.
Womit habe ich die -d Argumente vertauscht?
 

123neu

Bekanntes Mitglied
Nehmen wir mal dieses Beispiel an
Java:
package eins.zwo.drei;

public class Main {
    public static void main(String[] args) {
        System.out.println("fertig");
    }
}

Du kannst es compilen mit
javac Main.java

Wenn du anschließend
java Main
aufrufst, gibt es eine Fehlermeldung:
Error: Could not find or load main class Main
Caused by: java.lang.NoClassDefFoundError: eins/zwo/drei/Main (wrong name: Main)

stattdessen musst du also:
java -cp Main Main.java
aufrufen.

Die -d Option ist also nicht so wichtig. Möchtest du eigentlich ein .jar erzeugen?

Ungeachtet dessen , sollte die Verzeichnisstruktur aber wie die Paketstruktur sein. (Das erspart dir solche Fehler womöglich )
 
K

kneitzel

Gast
Also als erstes ein wichtiges Missverständnis:
Das -d soll beim kompilieren angegeben werden. Kompiliert wird mit javac. Daher kannte der Java Aufruf auch den Parameter -d nicht.

Dann ist ein wichtiger Punkt: Der Package-Name sollte der Verzeichnisstruktur entsprechen. Bei "package jav05c.kapitel1;" sollte die Datei im Verzeichnis jav05c\kapitel1 liegen.

Dann kannst Du in dem Hauptverzeichnis direkt das übersetzen aufrufen:
javac jav05c\kapitel1\MidiOutDevice.java

Danach solltest Du in dem Verzeichnis jav05c\kapitel1 neben der .java Datei auch die .class Datei finden.

Ein Aufruf erfolgt dann mit dem vollen Namen der Klasse, also incl. Package:
java jav05c.kapitel1.MidiOutDevice

Diesen Parameter -d brauchst Du nur, wenn Du die class Dateien an einer anderen haben willst. Es ist also üblich Sourcen und Generierte Dateien voneinander zu trennen. Sourcen liegen z.B. in einem Verzeichnis src und die Ausgabe in out.

Dann wärst du in einem Verzeichnis und hättest z.B. src\jav05c\kapitel1\MidiOutDevice.java für Deine Java Datei und möchtest das Ergebnis in out haben:
javac --source-path src -d out jav05c\kapitel1\MidiOutDevice.java

Generell ist es zwar ok, dass man das übersetzen und starten auf der Kommandozeile einmal durchgeht, aber hier wäre auch meine Meinung, dass man da nicht zu viel Zeit investieren sollte. Es macht Sinn, frühzeitig eine Entwicklungsumgebung zu nutzen. Dabei wäre meine Empfehlung, auf IntelliJ zu setzen (Aber andere IDEs gehen auch wie Eclipse oder Netbeans).
 

Mar_7596

Mitglied
Danke für eure Hilfe. Ich habe mich mit eclipse auseinander gesetzt und jetzt verstehe ich auch die Erstellung von Packages. Außerdem ist mir jetzt auch bewusst wozu Packages gut sind.
Ich bin froh, dass ihr euch den blöden Fragen von Anfängern, wie mir stellt aber am besten lernt man doch wenn man sich mit dem Kram selber beschäftigt.
Beste Grüße :)
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
J Packages erstellen Java Basics - Anfänger-Themen 7
C Probleme mit dem Erstellen und Importieren von Packages Java Basics - Anfänger-Themen 6
B Fragen zur Initialisierung/Zuweisung der Variable + Packages erstellen Java Basics - Anfänger-Themen 4
D Packages mit Wizard erstellen Java Basics - Anfänger-Themen 2
T Packages erstellen und importieren? Java Basics - Anfänger-Themen 10
T Erstellen eigener packages Java Basics - Anfänger-Themen 6
S Daten/Klassen/Packages richtig updaten!? Java Basics - Anfänger-Themen 2
A Exceptions und Packages Java Basics - Anfänger-Themen 6
M Probleme beim verwenden von Packages Java Basics - Anfänger-Themen 6
Mxxxt Übersicht Java-Packages Java Basics - Anfänger-Themen 3
D Zusätzliche Packages benutzen? Java Basics - Anfänger-Themen 6
C Java Packages Konvention Namensvergabe Java Basics - Anfänger-Themen 3
B eclipse und packages weiterentwickeln Java Basics - Anfänger-Themen 5
B Compiler-Fehler Packages fehlen? Java Basics - Anfänger-Themen 5
J Eclipse + Java + Packages importieren Java Basics - Anfänger-Themen 7
J eigene packages bzw klassen verwenden Java Basics - Anfänger-Themen 25
S Richtlinien wie man Classen in Packages organisieren soll? Java Basics - Anfänger-Themen 3
G Packages -> was bringen sie? Java Basics - Anfänger-Themen 4
V Java Packages Java Basics - Anfänger-Themen 4
O Funktionen dateiübergreifend mit Packages Java Basics - Anfänger-Themen 6
J Zugriff auf Variable vom typ (default) durch Importieren des Packages? Java Basics - Anfänger-Themen 5
D Javadoc für Packages oder ganze Projekte Java Basics - Anfänger-Themen 5
U Zugriff auf andere Packages Java Basics - Anfänger-Themen 10
S Problem mit Packages Java Basics - Anfänger-Themen 9
C Klassen Main-Routine in Packages? Java Basics - Anfänger-Themen 7
L Konsole und packages Java Basics - Anfänger-Themen 8
B Packages in Eclipse umbennen Java Basics - Anfänger-Themen 12
V Packages: Cannot find symbol Java Basics - Anfänger-Themen 12
Blindxantos Klassen in verschiedene Packages unterteilen Java Basics - Anfänger-Themen 2
B Wie funktioniert der Import von Dritt-packages in Eclipse? Java Basics - Anfänger-Themen 5
K Collections Problem beim import von Packages Java Basics - Anfänger-Themen 10
M Tief verschachtelte Packages Java Basics - Anfänger-Themen 7
Z CLASSPATH + Packages Java Basics - Anfänger-Themen 6
N packages und finden von Klassen Java Basics - Anfänger-Themen 2
J Packages in Jar-Datei Java Basics - Anfänger-Themen 7
D Packages verwenden und in eigenes Projekt integrieren Java Basics - Anfänger-Themen 3
S Anfängerproblem mit Packages Java Basics - Anfänger-Themen 4
J Anfängerfrage zu Grundlagen von Packages Java Basics - Anfänger-Themen 7
B Unterklassen, Packages Java Basics - Anfänger-Themen 3
F Dateipfade mit Packages Java Basics - Anfänger-Themen 7
R mit klassen-instanzen arbeiten in packages Java Basics - Anfänger-Themen 10
F OOP Wrapper ermöglicht Zugriff für andere Packages? Java Basics - Anfänger-Themen 6
T Javac und Packages Java Basics - Anfänger-Themen 4
braindump Packages in verschiedenen Unterverzeichnissen Java Basics - Anfänger-Themen 3
G Verschiedene Packages Java Basics - Anfänger-Themen 3
R wo befinden sich die packages? Java Basics - Anfänger-Themen 5
S 2 Packages Java Basics - Anfänger-Themen 14
D packages importieren Java Basics - Anfänger-Themen 3
I Frage zu Packages Java Basics - Anfänger-Themen 19
T Anagram Game - warum ist es auf 2 Packages aufgeteilt? Java Basics - Anfänger-Themen 3
S problem mit packages Java Basics - Anfänger-Themen 7
G Konventionen für die Bezeichnung von Packages Java Basics - Anfänger-Themen 4
M problem mit packages Java Basics - Anfänger-Themen 5
S Woher Packages bekommen? Wie installieren? (Netbeans) Java Basics - Anfänger-Themen 4
B Packages einfach kopieren? Java Basics - Anfänger-Themen 13
B Fehler beim einbinden eines Packages Java Basics - Anfänger-Themen 6
G Aufgabe mit Packages Java Basics - Anfänger-Themen 3
G erstes Arbeiten mit Packages Java Basics - Anfänger-Themen 2
H javac mit meheren packages Java Basics - Anfänger-Themen 2
G Aus package auf andere eigene packages zugreifen? Java Basics - Anfänger-Themen 7
E import Anweisung und Packages Java Basics - Anfänger-Themen 3
F Pfadfrage in Packages und jar-Archiven Java Basics - Anfänger-Themen 3
P packages verwenden Java Basics - Anfänger-Themen 3
M Variabelzugriff auf fremde Packages Java Basics - Anfänger-Themen 5
D Probleme nach Einbindung einens neuen Packages Java Basics - Anfänger-Themen 5
D Packages Java Basics - Anfänger-Themen 3
T Verständnisproblem packages/import Java Basics - Anfänger-Themen 9
P wohin muss ich die packages kopieren? Java Basics - Anfänger-Themen 12
H Packages in JAR-Datei einbinden Java Basics - Anfänger-Themen 10
S Importieren in Packages Java Basics - Anfänger-Themen 11
C packages, jars - Verstaendnisfrage Java Basics - Anfänger-Themen 7
L Problem mit Packages Java Basics - Anfänger-Themen 5
L Eigene Packages importieren Java Basics - Anfänger-Themen 2
N Packages definieren bzw. zum Classpath hinzufügen Java Basics - Anfänger-Themen 4
A Packages und Vererbung Java Basics - Anfänger-Themen 5
S Packages verwenden Java Basics - Anfänger-Themen 7
T Nerv! Packages und Classpath Java Basics - Anfänger-Themen 2
H probleme mit import von eigenen packages Java Basics - Anfänger-Themen 4
C Packages... Java Basics - Anfänger-Themen 7
XWing Int erstellen lassen? Java Basics - Anfänger-Themen 11
onlyxlia Schlüsselworte Was meint man mit "einen Typ" in Java erstellen? Java Basics - Anfänger-Themen 2
A exe Datei erstellen Java Basics - Anfänger-Themen 8
Athro-Hiro Weißes Bild in Java erstellen Java Basics - Anfänger-Themen 3
H Excel-Tabellen mit Java erstellen Java Basics - Anfänger-Themen 4
D MacOS: PDF erstellen geht nicht Java Basics - Anfänger-Themen 1
benny1993 Java Programm erstellen für ein Fußball-Turnier Java Basics - Anfänger-Themen 3
M Datentypen While-Schleife eine Java Methode erstellen Java Basics - Anfänger-Themen 3
P Welches SDK für das erstellen einer ausführbaren Datei? Java Basics - Anfänger-Themen 4
I Klassen von einem package laden, Statisches Feld auslesen und Objekt erstellen Java Basics - Anfänger-Themen 8
C Gewinnspiel erstellen mit Algorithmus Java Basics - Anfänger-Themen 3
Ostkreuz Spielfeld Schatz erstellen Java Basics - Anfänger-Themen 5
I Erste Schritte Einfache Datenbank-Webseite erstellen als Nicht-IT-lerin Java Basics - Anfänger-Themen 24
T Objekte mit arrays erstellen Java Basics - Anfänger-Themen 6
B Klasse statisch erstellen da n-mal geladen Java Basics - Anfänger-Themen 3
laxla123 Dreieck erstellen Java Basics - Anfänger-Themen 1
XWing Random Punkte erstellen mit der Random klasse Java Basics - Anfänger-Themen 15
A Passwort erstellen Java Basics - Anfänger-Themen 3
S CVS erstellen Java Basics - Anfänger-Themen 1
RashAGhul Java Verwaltungstool Erstellen mit kaum Wissen Java Basics - Anfänger-Themen 9
K warum kann ich das Objekt nicht erstellen ? Java Basics - Anfänger-Themen 2

Ähnliche Java Themen

Neue Themen


Oben