您是否正在導入正確的JAR?我不確定你是如何得到這個錯誤的。
我進口這些JAR:
gdata-client-1.0.jar
gdata-core-1.0.jar
gdata-youtube-2.0.jar
guava-11.0.2.jar
mail.jar
gdata-client-meta-1.0.jar
gdata-media-1.0.jar
gdata-youtube-meta-2.0.jar
jsr305.jar
當你解壓縮的GData zip文件,這些在GDATA/JAVA/lib目錄中找到。依賴關係在gdata/java/deps中找到,mail.jar是found here。
我有這些進口:
import com.google.gdata.client.youtube.YouTubeService;
import com.google.gdata.data.geo.impl.GeoRssWhere;
import com.google.gdata.data.media.mediarss.MediaKeywords;
import com.google.gdata.data.media.mediarss.MediaPlayer;
import com.google.gdata.data.media.mediarss.MediaThumbnail;
import com.google.gdata.data.youtube.VideoEntry;
import com.google.gdata.data.youtube.VideoFeed;
import com.google.gdata.data.youtube.YouTubeMediaContent;
import com.google.gdata.data.youtube.YouTubeMediaGroup;
import com.google.gdata.data.youtube.YouTubeMediaRating;
import com.google.gdata.data.youtube.YtPublicationState;
import com.google.gdata.data.youtube.YtStatistics;
import com.google.gdata.util.ServiceException;
我的代碼如下。我正在省略打印功能。此外,我是使用ClientLogin的示例代碼的簡單 - do not use ClientLogin in a real application
String feedUrl = "http://gdata.youtube.com/feeds/api/standardfeeds/most_viewed";
YouTubeService service = new YouTubeService("youtube", "DEVELOPER_KEY_HERE");
service.setUserCredentials("[email protected]", "YOUR_PASSWORD_HERE");
VideoFeed videoFeed = service.getFeed(new URL(feedUrl), VideoFeed.class);
printVideoFeed(videoFeed, true);
需要注意的是,如果可能的話,你應該看的v3 API。