2009-11-03 18 views

risposta

16

Il classloader cerca il classpath in ordine e utilizza la prima classe corrispondente trovata.

+4

In generale, questo è corretto. Tuttavia, dipende dall'implementazione del classloader. Ad esempio, quando si caricano le classi in un framework Web, i file jar/war/ear/sar rilasciati possono essere controllati prima del classpath ufficiale. –

3

FWIW, questo è un esempio di un argomento maggiore (modularità) indirizzata da OSGi e Project Jigsaw/JSR 294 in JDK 7Java 9.

La tua domanda è una buona motivazione per l'argomento: il classpath venerabile e semplice può essere stato una buona idea alla sua nascita, ma è certamente un punto dolente nell'età odierna di alta dipendenza dalle librerie di terze parti.

+1

Jigsaw non è in realtà in JDK 7 ma è pianificato per JDK 9. non ancora rilasciato. FWIW Ho inviato una modifica a questo errore fattuale ma è stata rifiutata (non dall'autore) perché "non aveva senso come modifica" e "denaturato l'originale" intento del post " – gregfqt

Problemi correlati