2011-01-31 14 views

risposta

31

Questa opzione controlla il modo in cui classpath viene passato alla JVM: tramite la riga di comando o tramite un file. La maggior parte dei sistemi operativi ha il limite massimo della riga di comando, quando viene superato, IDEA non sarà in grado di eseguire l'applicazione.

Quando la riga di comando è più lunga di 32768 caratteri, IDEA suggerisce di passare al percorso di classe dinamico. Il classpath lungo viene scritto su un file, quindi letto dall'utilità di avvio dell'applicazione e caricato tramite il classloader di sistema.

Se si è interessati ai dettagli di implementazione, è possibile controllare il codice sorgente IDEA Community edition, JdkUtil.java file, setupJVMCommandLine metodo.

19

Un effetto collaterale con IntelliJ 9.0.4 è che dopo aver attivato l'opzione, il percorso della classe non è più completo.

Nel mio caso l'opzione è stata attivata dopo aver scelto "" in una finestra di errore durante l'esecuzione di tutti i test di unità in un pacchetto specifico. Il messaggio di errore si legge "riga di comando è troppo lunga. Al fine di ridurre il suo file di lunghezza percorso di classe può essere utilizzato. Volete abilitare la modalità di file classpath per tutte le configurazioni di esecuzione del vostro progetto?"

Dopo questo alcuni test non sono riusciti perché le classi necessarie da altri moduli, che erano mancanti nel classpath.

Non ho trovato alcuna finestra di dialogo in cui potessi tornare indietro. Ho dovuto modificare manualmente il file .iws e ho cambiato l'opzione dynamic.classpath su "false".

+0

Ho ancora lo stesso problema con IntelliJ 13.1. Ho sollevato un bug: https://youtrack.jetbrains.com/issue/IDEA-130440 – bacar

Problemi correlati