2009-08-01 18 views
1

Ich versuche nur, ein paar Dinge zur Arbeit zu bringen, damit ich einige der Google App-Engines Java ausprobieren kann. Ich habe jedoch ein Problem mit etwas, das ich nicht erreichen kann.Wie kann ich diesen PicasawebService Fehler beheben?

Der Java-Code sieht wie folgt aus:

import java.net.URL; 
import com.google.gdata.client.photos.*; 
import com.google.gdata.data.photos.*; 

public class TestPicasa { 

public static void main(String[] args) { 

    try { 
     PicasawebService service = new PicasawebService("Picasa test"); 
     service.setUserCredentials("[email protected]", "password"); 
     URL feedURL = new URL("http://picasaweb.google.com/data/feed/api/user/username?kind=album"); 
     UserFeed feed = service.getFeed(feedURL, UserFeed.class); 
     for (AlbumEntry entry : feed.getAlbumEntries()) { 
      System.out.println(entry.getTitle().getPlainText()); 
     } 
    } catch (Exception e) { 
     e.printStackTrace(); 
    } 

} 

} 

Ich habe mail.jar verwiesen, activation.jar, Servlet-api.jar, gdata-Client, gdata-client-meta, gdata-Kern, gdata-media, gdata-photos-2.0.jar und gdata-photos-meta-2.0.jar nach Anleitung von google.

Und ich bekomme diese Fehlermeldung an die Konsole:

Exception in thread "main" java.lang.NoClassDefFoundError: com/google/common/collect/Maps 
at com.google.gdata.wireformats.AltRegistry.<init>(AltRegistry.java:118) 
at com.google.gdata.wireformats.AltRegistry.<init>(AltRegistry.java:100) 
at com.google.gdata.client.Service.<clinit>(Service.java:532) 
at TestPicasa.main(TestPicasa.java:10) 

Jede Idee, was ich verpasst haben?

Antwort

0

Vergewissern Sie sich, dass Sie Ihre google jars nicht zweimal laden. Manchmal hätten Sie zwei Standorte und der, an den Sie nicht denken, würde ein Glas haben. Dann wird Ihre Klassendatei vermisst, da das Jar, in dem sie sich befindet, nicht unter dem 1. Classloader ist. Dies geschieht oft auf Tomcat, wenn Sie alle Ihre JARs in der WEB-INF/lib der Webanwendung haben, aber einige der JARs in der Tomcat/lib. Alternativ fand ich nur fehlende Klasse in Google-collect.jar und ich don''t denken Sie es Listing

Verwandte Themen