Classpath ( de Wikipedia ):
Semblable au comportement de chargement dynamique classique, lors de l'exécution de programmes Java, la machine virtuelle Java trouve et charge les classes paresseusement (elle ne charge le bytecode d'une classe que lorsque la classe est utilisée pour la première fois). Le classpath indique à Java où chercher dans le système de fichiers les fichiers définissant ces classes.
La machine virtuelle recherche et charge les classes dans cet ordre:
classes d'amorçage: les classes qui sont fondamentales pour la plateforme Java (comprenant les classes publiques de la bibliothèque de classes Java et les classes privées nécessaires pour que cette bibliothèque soit fonctionnelle).
classes d'extension: packages qui se trouvent dans le répertoire d'extension du JRE ou du JDK,
jre / lib / ext / packages et bibliothèques définis par l'utilisateur
Par défaut, seuls les packages de l'API standard JDK et les packages d'extension sont accessibles sans qu'il soit nécessaire de définir où les trouver. Le chemin de tous les packages et bibliothèques définis par l'utilisateur doit être défini dans la ligne de commande (ou dans le manifeste associé au fichier Jar contenant les classes).
En termes simples, pendant que votre programme est en cours d'exécution, la JVM ne charge les classes que si nécessaire. Lorsqu'une classe est nécessaire, la JVM dépendra du chemin d'accès aux classes pour savoir où charger le bytecode (c'est-à-dire: .class
fichiers).
Le chemin de construction , en revanche, est généralement utilisé par un IDE, tel qu'Eclipse, pour savoir où rechercher les bibliothèques supplémentaires requises pour compiler le code source d'un projet. Le chemin de compilation n'est pas utilisé pendant l'exécution.