2009-08-01 69 views
1

我只是想获得一些工作,所以我可以尝试一些谷歌应用程序引擎Java。但是,我似乎遇到了一些我无法控制的问题。我该如何解决这个PicasawebService错误?

Java代码看起来是这样的:

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(); 
    } 

} 

} 

我也参考了mail.jar,activation.jar,它的servlet-api.jar文件,GDATA客户端,GDATA,客户端元,GDATA核心, gdata-media,gdata-photos-2.0.jar和gdata-photos-meta-2.0.jar根据来自google的指示。

而且我得到这个错误控制台:

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) 

什么我已经错过了任何想法?

回答

0

确认你没有加载你的谷歌瓶两次。有时你会有2个地点,而你没有想到的地方会有一个缺少的罐子。然后你的类文件会丢失,因为它所在的jar不在1st classloader下。当你在webapp的WEB-INF/lib中拥有所有的jar时,这种情况通常发生在Tomcat上,但是在Tomcat/lib中有一些jar。或者,我只在google-collect.jar中发现缺失的类,并且我不认为您列出了它

相关问题