The Travis build setup is suboptimal.
At the moment, code is compiled and installed by the default install phase.
Then the default build phase is executed, which compiles and runs the tests.
If the tests succeed, then the build is cleaned, recompiled, and retested; this time with
The .travis.yml file could be changed to skip the install phase, and to run tests with coverage during the build phase.
The coveralls plugin can be configured in the pom to not fail the build if the service is unreachable, so forks that don't have jacoco enabled won't always have their builds fail.
Also, the jdk switching in the trusty container seems to be not working properly at the moment, so installing a jdk7 doesn't work properly.
These changes evolved as I was poking jenkins last night.