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.