Eclipse-Maven を使用した Appengine のテストでは、これを POM.xml で定義しています。
<!-- Appengine Testing -->
<dependency>
<groupId>com.google.appengine</groupId>
<artifactId>appengine-api-labs</artifactId>
<version>${appengine.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.google.appengine</groupId>
<artifactId>appengine-testing</artifactId>
<version>${appengine.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.google.appengine</groupId>
<artifactId>appengine-api-stubs</artifactId>
<version>${appengine.version}</version>
<scope>test</scope>
</dependency>
ただし、この依存関係を追加するたびに、webapp が呼び出されると、次のエラーがスローされます。
java.lang.ClassCastException: com.google.appengine.tools.development.ApiProxyLocalImpl cannot be cast to com.google.appengine.tools.development.ApiProxyLocal
JUnit を実行して Appengine 固有のコードをテストすることはできますが、アプリを実行するたびに、これらの依存関係を削除してすべてを更新しなければならないのは非常に苦痛です。
このシナリオの回避策はありますか?