Une introduction aux phases de
Compilation,
Exécution,
Archivage,
en ligne de commande.
Une application Java nommée App se déclare
dans un fichier App.java.
Elle déclare une fonction main de signature
(Sinon, c’est un module, pas une application.)
main : point d’entrée de l’application,
args : arguments passés à l’application.
App.javanécessite la commande javac,
fournie par Java Development Kit (JDK).
$ javac App.java
App.class généré par la compilation.nécessite la commande java,
fournie par Java Runtime Environment (JRE).
Dans le répertoire contenant le fichier App.class:
$ java App
Hello, World!
module Printer,
application App.
Printer.javaApp.java$ javac Printer.java App.java
$ java App
Hello world!
Distribuer le programme comme un fichier unique.
Manifest.txtSpécifier le point d’entrée de l’application :
Main-Class: App
nécessite la commande jar (Java Archive Tool),
fournie par Java Development Kit (JDK).
Compilez vos fichiers .java, puis :
$ jar cfm app.jar Manifest.txt *.class
Voir aussi : Packaging Programs in JAR Files
Dans le répertoire contenant le fichier app.jar :
$ java -jar app.jar
Hello, World!
Ensemble de fonctionnalités,
Disponibles sous forme de package(s),
Pas de point d’entrée (pas une application).
printer/Printer.java$ javac printer/Printer.java
$ jar cf printer.jar printer
Pour utiliser la bibliothèque contenue dans l’archive printer.par, il faut indiquer à java de prendre en compte ce fichier au moyen du classpath
à la compilation de l’application,
lors de son exécution.
Ajoutez au classpath
"." pour les fichiers .class du répertoire courant,
"*" pour les fichiers .jar du répertoire courant.
Voir ausi Setting the class path.
Comme :
une variable d’environnement
$ export CLASSPATH=".:*"une option en ligne de commande de java/javac :
$ javac -cp ".:*" *.javaApp.java$ javac -cp ".:*" App.java
$ ls
App.class App.java printer.jar
$ java -cp ".:*" App
Hello, World!