The version 0.2.5 of jarc continues in this spirit, but instead of having to build first a jar file and then compile and run the unit tests, it automatically build and run unit tests if they are available. Here's an example of manifest file with unit tests:
Manifest-Version: 1.0
Main-Class: org.implementers.apps.turnuri.Main
X-Jarc-Target: 1.6
Name: org/implementers/apps/turnuri/Main.class
Name: org/implementers/apps/turnuri/TurnUriTest.class
X-Jarc-Test: true
With this manifest file, jarc will build a jar file with Main as root of the dependencies, then build a second, internal, jar file with TurnUriTest as root of the dependencies and use it as Junit test. The X-Jarc-Test attribute can also take the value "false" to deactivate a test temporarily.
Note that the jar file is written on the disk even if the unit tests fail.