2011-10-26 12 views

Odpowiedz

15

Nie dostarczyłeś wersji Maven, ale przynajmniej w 3.x (i może także 2.x) możesz uruchamiać polecenia za pomocą opcji -X (debugowanie). W ten sposób Test Classpath zostanie wydrukowany przed uruchomieniem testów.

mvn test -X 
+0

ten również działa z maven 1.x Również polecam, że grep wyniki, aby uniknąć konieczności przeszukiwania stron wyjścia: test maven - X | grep "maven.dependency.classpath" –

2

nie mogę sformatować moją odpowiedź w moim komentarzu tak składającego grepped wersję tutaj:

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

Ogólnie można znaleźć ścieżki klasy, które Maven korzysta za pomocą wbudowanego maven dependency plugin i jego build-classpath goal.

Jeśli chcesz, aby ścieżka klasy używana do kompilowania i uruchamiania testu, musisz wybrać opcję testdependency scope. Ten zakres jest domyślny, ale jeśli chcesz być jawny, możesz ustawić go na -DincludeScope=test.

Inne zakresy obejmują runtime, compile, provided i system.

W zależności od tego, jak chcesz wykorzystać wyjście, możesz grać z opcjami -Dmdep.outputFilterFile i -Dmdep.outputFile. Opcja mdep.outputFilterFile ułatwia analizowanie danych wyjściowych ze skryptu, a opcja outputFile zapisuje do pliku, a niektóre narzędzia mogą odczytywać bezpośrednio.

Oto kilka przykładów:

$ 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 
Powiązane problemy