I've been stumped by this for hours (which is why I also added a bounty), but here's how I finally resolved it.
First of all, check your project's classpath dependancies using
mvn dependency:build-classpath
I could immediately see the problem in the output:
<home>/.m2\repository\android\extras\android-support\v4\android-support-v4.jar
<home>/.m2\repository\android\platforms\android\android-18\android-android-18.jar
<home>/.m2\repository\com\actionbarsherlock\actionbarsherlock\4.4.0\actionbarsherlock-4.4.0.apklib
<home>/.m2\repository\com\google\android\support-v4\r7\support-v4-r7.jar
<... more jars>
There are two support jars included, and the support-v4-r7.jar
overrides my newer android-support-v4.jar
.
The older one was being loaded by ActionBarSherlock in my project (in your project the culprit might be any of the apklib dependencies), so I excluded it in my project pom:
<dependency>
<groupId>com.actionbarsherlock</groupId>
<artifactId>actionbarsherlock</artifactId>
<version>4.4.0</version>
<type>apklib</type>
<exclusions>
<exclusion>
<groupId>com.google.android</groupId>
<artifactId>support-v4</artifactId>
</exclusion>
</exclusions>
</dependency>
Hopefully this helps someone.