在我的GAE应用程序中,有以下一行:
ContactsService myService=new ContactsService("app-name");
编译正常,但运行时会导致以下错误:
Exception in thread "main" java.lang.NoSuchMethodError: com.google.common.collect.Iterators.forArray([Ljava/lang/Object;)Lcom/google/common/collect/UnmodifiableIterator;
at com.google.common.collect.ImmutableSet$ArrayImmutableSet.iterator(ImmutableSet.java:415)
at com.google.common.collect.ImmutableSet$ArrayImmutableSet.iterator(ImmutableSet.java:392)
at com.google.common.collect.ImmutableCollection$Builder.addAll(ImmutableCollection.java:317)
at com.google.common.collect.ImmutableList$Builder.addAll(ImmutableList.java:601)
at com.google.gdata.wireformats.AltFormat.<init>(AltFormat.java:183)
at com.google.gdata.wireformats.AltFormat.<init>(AltFormat.java:42)
at com.google.gdata.wireformats.AltFormat$Builder.build(AltFormat.java:457)
at com.google.gdata.wireformats.AltFormat.<clinit>(AltFormat.java:49)
at com.google.gdata.client.Service.<clinit>(Service.java:558)
at Test.ContactsExample.<init>(ContactsExample.java:102)
我已经包含了guava-r09.jar,所以它有“ImmutableSet”,如果我不包含guava-r09.jar,它会说:
线程“main”中的异常java.lang.NoClassDefFoundError:com / google / common / collect / ImmutableSet
我该怎么办?
答案 0 :(得分:0)
我发现了原因:不需要包含google-collect - * .jar,错误来源。