Ci sono tre parti:(1) creare la struttura delle directory; (2) indicare il pacchetto nel file java; (3) compilalo.
Ad esempio, se desideri creare il pacchetto com.mycompany.myproject , allora devi iniziare nella directory di base per il tuo progetto e poi:
(1) creare la directory com/mycompany/myproject
(2) creare file java in quella directory, indicando package com.mycompany.myproject in essi;
(3) compilare i file, ad esempio, con javac -cp . com/mycompany/myproject/*.java
Potresti voler specificare una diversa directory di output in modo da non mischiare sorgenti e classi compilate.
Se hai bisogno di usare librerie esterne (file .jar) per compilare, allora devi usare -cp o -classpath parametro della riga di comando su javac strumento per specificarli, ad es.
javac -cp .:some_library.jar:lib/another_library.java com/mycompany/myproject/*.java
Potrebbe essere una buona idea mettere tutte le librerie esterne in un unico posto, ad es. lib sottodirectory della directory principale del progetto. E, a proposito, il precedente javac comando presuppone un ambiente simile a unix. Se utilizzi Windows, dovrai utilizzare ; per la separazione dei percorsi.
i pacchetti sono solo directory sul filesystem.quindi il tuo pacchetto:com.mycompany.util corrisponde a una directory com/mycompany/util .
Durante l'esecuzione e la compilazione, ecc., la directory di lavoro corrente dovrebbe trovarsi dove si trova la directory principale.
Per includere le librerie, includile nel tuo classpath durante la compilazione e l'esecuzione. Ad esempio crea una directory di progetto myproject e sotto quello hai i tuoi file java e pacchetti sotto myproject/src/ e le librerie che usi sotto myproject/libs/ Quindi, quando la tua attuale directory di lavoro è myproject eseguire java -cp .:libs/*.jar o lo stesso con javac .
Ma ti suggerisco di esaminare l'utilizzo di ant o maven.
Puoi andare d'accordo sulla riga di comando usando uno strumento di packaging come Ant o Maven. Maven è particolarmente utile perché è uno strumento di livello superiore che sa già come creare vari tipi di progetto:app da riga di comando, webapp, librerie, ecc. Gestisce anche le dipendenze delle librerie scaricandole dai repository.