2011-10-26 5 views

risposta

15

Non hai fornito la versione di Maven, ma almeno in 3.x (e forse anche in 2.x) puoi eseguire comandi con l'opzione -X (debug). In questo modo viene stampato il Classpath di prova prima dell'esecuzione dei test.

mvn test -X 
+0

Questo funziona anche con Maven 1.x Inoltre, vi consiglio di grep i risultati per evitare di dover cercare tra le pagine di uscita: prova Maven - X | grep "maven.dependency.classpath" –

2

non ho potuto formattare la mia risposta nel mio commento in modo da sottoporre la versione grepped qui:

mvn test -X | grep "maven.dependency.classpath" 
0

In generale si può trovare il percorso di classe che Maven è utilizzando utilizzando il built-in e maven dependency plugin il suo build-classpath goal.

Se si desidera utilizzare il classpath per compilare ed eseguire il test, è necessario selezionare testdependency scope. Questo ambito è l'impostazione predefinita, ma se si desidera essere espliciti è possibile impostarlo con -DincludeScope=test.

Altri ambiti includono runtime, compile, provided e system.

A seconda di come si desidera utilizzare l'uscita, è possibile giocare con le opzioni -Dmdep.outputFilterFile e -Dmdep.outputFile. Lo mdep.outputFilterFile semplifica l'analisi dell'output da uno script e l'opzione outputFile scrive su un file, che alcuni strumenti possono leggere direttamente.

ecco alcuni esempi:

$ mvn dependency:build-classpath -DincludeScope=test -Dmdep.outputFilterFile=true|grep 'classpath=' 
classpath=xxx.jar:yyy.jar 
$ mvn dependency:build-classpath -DincludeScope=test -Dmdep.outputFile=cp.txt 
$ cat cp.txt 
xxx.jar:yyy.jar