Building DbUnit is quite simple; all you need is JDK 1.4+, Subversion and Maven 2. Once you have them all, you can build DbUnit by just typing mvn ! Anyway, the items below describe every step.
Run mvn site:site in the command line; the site will be available on target/site/index.html . Note that you might get an OutOfMemoryExceptionError ; if that happens, you must increase the heap size through the MAVEN_OPTS variable (for instance, on Unix systems, you could run MAVEN_OPTS=-mx512M mvn site:site ).
As DbUnit uses Maven, it is not necessary to store IDE-specific information in the source repository. Instead, these meta-data can be dynamically generate by Maven. For instance, to create an Eclipse project, it is just a matter of typing mvn eclipse:eclipe . See more details on Maven Eclipse Plugin , http://mevenide.codehaus.org/m2-site/index.html}Mevenide for NetBeans , and Maven IDEA plugin respectively.
If you are building DbUnit in order to contribute a patch, it is necessary to compile it using Java SE 1.3, which takes 3 adittional steps:
The tasks described below describes how to maintain DbUnit. Some of these tasks will use ssh to upload files to SourceForge, so it is necessary to setup your environment to allow it (typically using ssh-agent - see more details on SourceForge ).
Once new code is incorporated in the SVN code, it is necessary to update the Maven 2 repository with new snapshots, and also update the site. These 2 tasks can be done with a simple command:
mvn -Pofficial clean source:jar javadoc:jar deploy site:deploy
Cutting a release requires the following steps: creating a SVN tag, generating the artifacts, updating the site, uploading the artifacts into SourceForge, uploading the artifacts on ibiblio , and sending the announcement emails.
Fortunatelly, most of the steps can be automated by Maven. The first 3 steps can be achieve using Maven Release Plugin , as follow:
mvn -Pofficial release:prepare
and then:
mvn -Pofficial release:perform
That last command has created all necesary files for the fourth and fifth steps in the target/checkout/target directory. So, for the fourth step, log in SourceForge and uploading the following files:
And for the fifth step, create a Jira request and upload the XXX/target/dbunit-RELEASE-bundle.jar ) file (see Guide to uploading artifacts to The Central Repository for detailed instructions). NOTE: it is also necessary to create dbunit-RELEASE.tar.gz and dbunit-RELEASE.zip - I think Maven does that, but could not test by the time of the 2.2 release.
The final step can also be done by Maven, using the Maven Changes Plugin :
mvn changes:announcement-mail
Note that it is nice to change the release's introduction message first - look for the plugin's introduction parameter in the pom.xml ; please change such an element before tagging the release.
Everytinme a bug is fixed (or request is implemented), it is necessary to update the src/changes/changes.xml file.