The issue was a combination of two factors:
First, there was a transitive dependency problem (namely that of hamcrest-core 1.1 -> jmock 1.1.0 -> JUnit 3.8.1) where (in Maven's dependency-tree) the older JUnit was 'closer' to the systemTest module (which was inheriting the version dependency), and revision 3.8.1 of JUnit doesn't have contain org.junit.runner.notification.RunListener.
Second, there was confusion over the interpretation of the <version>
tag by maven-- having <version>4.10</version>
indicates a soft requirement for junit, rather than a hard requirement (which might be indicated with <version>[4.10]</version>
(see also Maven Dependency Mediation))
The latter led maven to accept the 'closest' satisfactory JUnit dependency (which in this case was 3.8) rather than the expected value, thereby giving rise to the error. Altering the pom to the [N.mm] 'hard' syntax resolves this problem.