Author: krosenvold Date: Sun Apr 10 10:41:17 2011 New Revision: 1090769 URL: http://svn.apache.org/viewvc?rev=1090769&view=rev Log: o Improved docs on the state of building/releasing surefire
Modified: maven/surefire/trunk/maven-surefire-plugin/src/site/apt/developingSurefire.apt Modified: maven/surefire/trunk/maven-surefire-plugin/src/site/apt/developingSurefire.apt URL: http://svn.apache.org/viewvc/maven/surefire/trunk/maven-surefire-plugin/src/site/apt/developingSurefire.apt?rev=1090769&r1=1090768&r2=1090769&view=diff ============================================================================== --- maven/surefire/trunk/maven-surefire-plugin/src/site/apt/developingSurefire.apt (original) +++ maven/surefire/trunk/maven-surefire-plugin/src/site/apt/developingSurefire.apt Sun Apr 10 10:41:17 2011 @@ -28,23 +28,33 @@ When working with surefire, it is necessary to understand a few things: -* The surefire booter is capable of booting all the way back to jdk1.3. Specifically +JDK Versions + The surefire booter is capable of booting all the way back to jdk1.3. Specifically this means surefire-api, surefire-booter, common-junit3 and surefire-junit3 are source/target 1.3. The plugin itself is 1.4 and several providers are 1.5. -* Classes in the SUT (Subject Under Test), override any classes within the +Provider Isolation + Classes in the SUT (Subject Under Test), override any classes within the surefire providers. This means providers using any third party dependencies (other than the test framework itself), should shade these classes to a different package. -* The surefire-providers module contains common-junitXX modules. These modules +Common provider modules + The surefire-providers module contains common-junitXX modules. These modules depend on the XX version of JUnit and can access the JUnit API's at the correct JUnit version level. Unit tests can also be written that will run with the correct JUnit version. At build time, all of the relevant parts of these "common" modules are just shaded into the providers jar files. -* "Shadefire" is the first module to be run in the +Shadefire + "Shadefire" is the first module to be run in the surefire build. This creates as shaded version of the JUnit provider, and this provider is thereafter used to build surefire itself (As of any release after 2.8). This is because the SUT overrides the provider, and the shadefire provider has been - relocated to avoid this overriding when surefire is building itself. \ No newline at end of file + relocated to avoid this overriding when surefire is building itself. + +Deploying/releasing surefire + Surefire depends on a previous version of itself, which + is too advanced for maven 2.2.x dependency resolution, and maven 3.x is + required to build surefire. Until a 3.x site plugin is released the site + for surefire has to be deployed with mvn 2.2.1 (using -N option). \ No newline at end of file