No takie coś jak poniżej w nadrzędnym pom.xml powinno działać, gdy trzeba użyć innej wersji kompilatora dla testów, a innej wersji dla normalnych źródeł:
Dzięki. Zdaje się że działa, ale...
Mam w pomie ustawionego JUnita 4.10, a w testach używam adnotacji @Test (dawno nie testowałem, więc mogę robić jakiś śmieszny błąd). Przy odpalaniu mvn test jednak nie są rozpoznawane jako testy metody mające adnotację @org.junit.Test, ale nie mające nazwy zaczynającej się od test.
Aktualnie projektu jeszcze nie spłaszczyłem - jak na razie się poddałem, bo z Mavena jestem początkujący. Projekt i tak jest na kilka miesięcy zamrażany - firma produkująca bileterki nie kwapi się do udostępnienia takowej do testów, więc jak nie ma bileterki to jej nie oprogramuję. Będę zajmował się czymś innym, ale i tak, jeśliby udało mi się ustawić projekt od początku do końca, to potem byłoby łatwiej.
User@User-Komputer /cygdrive/c/bileterka.mvn/common
$ mvn clean
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building common 1
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-clean-plugin:2.4.1:clean (default-clean) @ common ---
[INFO] Deleting C:\bileterka.mvn\common\target
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 0.284s
[INFO] Finished at: Thu Apr 05 17:27:01 CEST 2012
[INFO] Final Memory: 2M/121M
[INFO] ------------------------------------------------------------------------
User@User-Komputer /cygdrive/c/bileterka.mvn/common
$ mvn test
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building common 1
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-resources-plugin:2.5:resources (default-resources) @ common ---
[debug] execute contextualize
[INFO] Using 'utf-8' encoding to copy filtered resources.
[INFO] skip non existing resourceDirectory C:\bileterka.mvn\common\src\main\resources
[INFO]
[INFO] --- maven-compiler-plugin:2.3.2:compile (default-compile) @ common ---
[INFO] Compiling 60 source files to C:\bileterka.mvn\common\target\classes
[INFO]
[INFO] --- maven-compiler-plugin:2.3.2:compile (javame-main-compile) @ common ---
[INFO] Nothing to compile - all classes are up to date
[INFO]
[INFO] --- maven-compiler-plugin:2.3.2:testCompile (javase-test-compile) @ common ---
[INFO] Compiling 11 source files to C:\bileterka.mvn\common\target\test-classes
[INFO]
[INFO] --- maven-resources-plugin:2.5:testResources (default-testResources) @ common ---
[debug] execute contextualize
[INFO] Using 'utf-8' encoding to copy filtered resources.
[INFO] skip non existing resourceDirectory C:\bileterka.mvn\common\src\test\resources
[INFO]
[INFO] --- maven-compiler-plugin:2.3.2:testCompile (default-testCompile) @ common ---
[INFO] Nothing to compile - all classes are up to date
[INFO]
[INFO] --- maven-surefire-plugin:2.10:test (default-test) @ common ---
[INFO] Surefire report directory: C:\bileterka.mvn\common\target\surefire-reports
-------------------------------------------------------
T E S T S
-------------------------------------------------------
Running com.inno.onboardcomp.common.emar.requests.SendCashRegisterIdRequestTest
Tests run: 1, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 0.031 sec <<< FAILURE!
Running com.inno.onboardcomp.common.emar.requests.SendCompanyIdRequestTest
Tests run: 1, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 0 sec <<< FAILURE!
Running com.inno.onboardcomp.common.emar.requests.SendCurrentRideIdRequestTest
Tests run: 1, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 0 sec <<< FAILURE!
Running com.inno.onboardcomp.common.emar.requests.SendTicketsRequestTest
Tests run: 1, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 0 sec <<< FAILURE!
Running com.inno.onboardcomp.common.emar.responses.parsers.RootResponseParserTest
Tests run: 1, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 0 sec <<< FAILURE!
Running com.inno.onboardcomp.common.queue.QueueTest
Tests run: 1, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 0 sec <<< FAILURE!
Running com.inno.onboardcomp.common.util.Adler32Test
Tests run: 1, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 0 sec <<< FAILURE!
Running com.inno.onboardcomp.common.util.Base64Test
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0 sec
Running com.inno.onboardcomp.common.util.Crc32Test
Tests run: 1, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 0 sec <<< FAILURE!
Running com.inno.onboardcomp.common.util.LowLevelParserTest
Tests run: 1, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 0 sec <<< FAILURE!
Running com.inno.onboardcomp.common.util.MyBase16Test
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0 sec
Results :
Failed tests: warning(junit.framework.TestSuite$1): No tests found in com.inno.onboardcomp.common.emar.requests.SendCashRegisterIdRequestTest
warning(junit.framework.TestSuite$1): No tests found in com.inno.onboardcomp.common.emar.requests.SendCompanyIdRequestTest
warning(junit.framework.TestSuite$1): No tests found in com.inno.onboardcomp.common.emar.requests.SendCurrentRideIdRequestTest
warning(junit.framework.TestSuite$1): No tests found in com.inno.onboardcomp.common.emar.requests.SendTicketsRequestTest
warning(junit.framework.TestSuite$1): No tests found in com.inno.onboardcomp.common.emar.responses.parsers.RootResponseParserTest
warning(junit.framework.TestSuite$1): No tests found in com.inno.onboardcomp.common.queue.QueueTest
warning(junit.framework.TestSuite$1): No tests found in com.inno.onboardcomp.common.util.Adler32Test
warning(junit.framework.TestSuite$1): No tests found in com.inno.onboardcomp.common.util.Crc32Test
warning(junit.framework.TestSuite$1): No tests found in com.inno.onboardcomp.common.util.LowLevelParserTest
Tests run: 11, Failures: 9, Errors: 0, Skipped: 0
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 2.299s
[INFO] Finished at: Thu Apr 05 17:27:06 CEST 2012
[INFO] Final Memory: 12M/157M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.10:test (default-test) on project common: There are test failures.
[ERROR]
[ERROR] Please refer to C:\bileterka.mvn\common\target\surefire-reports for the individual test results.
[ERROR] -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException
User@User-Komputer /cygdrive/c/bileterka.mvn/common
$ mvn clean
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building common 1
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-clean-plugin:2.4.1:clean (default-clean) @ common ---
[INFO] Deleting C:\bileterka.mvn\common\target
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 0.281s
[INFO] Finished at: Thu Apr 05 17:28:16 CEST 2012
[INFO] Final Memory: 2M/121M
[INFO] ------------------------------------------------------------------------
User@User-Komputer /cygdrive/c/bileterka.mvn/common
$ mvn test
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building common 1
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-compiler-plugin:2.3.2:compile (javame-main-compile) @ common ---
[INFO] Compiling 60 source files to C:\bileterka.mvn\common\target\classes
[INFO]
[INFO] --- maven-resources-plugin:2.5:resources (default-resources) @ common ---
[debug] execute contextualize
[INFO] Using 'utf-8' encoding to copy filtered resources.
[INFO] skip non existing resourceDirectory C:\bileterka.mvn\common\src\main\resources
[INFO]
[INFO] --- maven-compiler-plugin:2.3.2:compile (default-compile) @ common ---
[INFO] Nothing to compile - all classes are up to date
[INFO]
[INFO] --- maven-compiler-plugin:2.3.2:testCompile (javase-test-compile) @ common ---
[INFO] Compiling 11 source files to C:\bileterka.mvn\common\target\test-classes
[INFO]
[INFO] --- maven-resources-plugin:2.5:testResources (default-testResources) @ common ---
[debug] execute contextualize
[INFO] Using 'utf-8' encoding to copy filtered resources.
[INFO] skip non existing resourceDirectory C:\bileterka.mvn\common\src\test\resources
[INFO]
[INFO] --- maven-compiler-plugin:2.3.2:testCompile (default-testCompile) @ common ---
[INFO] Nothing to compile - all classes are up to date
[INFO]
[INFO] --- maven-surefire-plugin:2.10:test (default-test) @ common ---
[INFO] Surefire report directory: C:\bileterka.mvn\common\target\surefire-reports
-------------------------------------------------------
T E S T S
-------------------------------------------------------
Running com.inno.onboardcomp.common.emar.requests.SendCashRegisterIdRequestTest
Tests run: 1, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 0.016 sec <<< FAILURE!
Running com.inno.onboardcomp.common.emar.requests.SendCompanyIdRequestTest
Tests run: 1, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 0 sec <<< FAILURE!
Running com.inno.onboardcomp.common.emar.requests.SendCurrentRideIdRequestTest
Tests run: 1, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 0 sec <<< FAILURE!
Running com.inno.onboardcomp.common.emar.requests.SendTicketsRequestTest
Tests run: 1, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 0 sec <<< FAILURE!
Running com.inno.onboardcomp.common.emar.responses.parsers.RootResponseParserTest
Tests run: 1, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 0 sec <<< FAILURE!
Running com.inno.onboardcomp.common.queue.QueueTest
Tests run: 1, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 0 sec <<< FAILURE!
Running com.inno.onboardcomp.common.util.Adler32Test
Tests run: 1, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 0 sec <<< FAILURE!
Running com.inno.onboardcomp.common.util.Base64Test
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0 sec
Running com.inno.onboardcomp.common.util.Crc32Test
Tests run: 1, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 0 sec <<< FAILURE!
Running com.inno.onboardcomp.common.util.LowLevelParserTest
Tests run: 1, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 0 sec <<< FAILURE!
Running com.inno.onboardcomp.common.util.MyBase16Test
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0 sec
Results :
Failed tests: warning(junit.framework.TestSuite$1): No tests found in com.inno.onboardcomp.common.emar.requests.SendCashRegisterIdRequestTest
warning(junit.framework.TestSuite$1): No tests found in com.inno.onboardcomp.common.emar.requests.SendCompanyIdRequestTest
warning(junit.framework.TestSuite$1): No tests found in com.inno.onboardcomp.common.emar.requests.SendCurrentRideIdRequestTest
warning(junit.framework.TestSuite$1): No tests found in com.inno.onboardcomp.common.emar.requests.SendTicketsRequestTest
warning(junit.framework.TestSuite$1): No tests found in com.inno.onboardcomp.common.emar.responses.parsers.RootResponseParserTest
warning(junit.framework.TestSuite$1): No tests found in com.inno.onboardcomp.common.queue.QueueTest
warning(junit.framework.TestSuite$1): No tests found in com.inno.onboardcomp.common.util.Adler32Test
warning(junit.framework.TestSuite$1): No tests found in com.inno.onboardcomp.common.util.Crc32Test
warning(junit.framework.TestSuite$1): No tests found in com.inno.onboardcomp.common.util.LowLevelParserTest
Tests run: 11, Failures: 9, Errors: 0, Skipped: 0
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 2.294s
[INFO] Finished at: Thu Apr 05 17:28:21 CEST 2012
[INFO] Final Memory: 12M/157M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.10:test (default-test) on project common: There are test failures.
[ERROR]
[ERROR] Please refer to C:\bileterka.mvn\common\target\surefire-reports for the individual test results.
[ERROR] -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException
User@User-Komputer /cygdrive/c/bileterka.mvn/common
$
Pierwszy mvn test jest z konfiguracją którą podaleś w swoim ostatnim poście w tym wątku. Zaniepokoił mnie ten fragment:
[INFO] --- maven-compiler-plugin:2.3.2:compile (default-compile) @ common ---
[INFO] Compiling 60 source files to C:\bileterka.mvn\common\target\classes
[INFO]
[INFO] --- maven-compiler-plugin:2.3.2:compile (javame-main-compile) @ common ---
[INFO] Nothing to compile - all classes are up to date
Zmieniłem więc:
[phase]compile[/phase]
Na:
[phase]process-sources[/phase]
I jak widać zmieniło się na:
[INFO] --- maven-compiler-plugin:2.3.2:compile (javame-main-compile) @ common ---
[INFO] Compiling 60 source files to C:\bileterka.mvn\common\target\classes
Czyli teraz wygląda na poprawne, przynajmniej jak dla mnie.
Niby jeszcze nie spłaszczyłem projektu, ale Maven powinien dobrze działać dla hierarchicznego. Tymczasem nadal budowanie projektu działa źle. Tylko jeśli zrobię mvn package z poziomu parenta to mi się utworzy dobra para jad/jar w module javame. Żeby mi działało dobrze kompilowanie/ paczkowanie etc z poziomu modułu javame, po wcześniejszym mvn clean na parencie, to muszę najpierw zrobić mvn install w module common. Albo ja coś robię źle, albo w którejś wtyczce musi być błąd który psuje zależności.