java - 构建 gdata Java 程序

标签 java youtube-api gdata-api

我被困在开发之初。我有一个简单的测试程序,如下所示。我关注了http://code.google.com/apis/gdata/articles/eclipse.html设置 Eclipse。

import com.google.gdata.client.*;
import com.google.gdata.client.youtube.*;
import com.google.gdata.data.*;
import com.google.gdata.data.geo.impl.*;
import com.google.gdata.data.media.*;
import com.google.gdata.data.media.mediarss.*;
import com.google.gdata.data.youtube.*;
import com.google.gdata.data.extensions.*;
import com.google.gdata.util.*;
import java.io.IOException;
import java.io.File;
import java.net.URL;

public class Test {
  public static void main(String[] args) {
    YouTubeService service = new YouTubeService(
          "xxx.apps.googleusercontent.com", 
          "AAA");
    }
  }
}

当我在控制台中运行 java Test 时,出现异常:

Exception in thread "main" java.lang.NoClassDefFoundError: com/google/gdata/client/youtube/YouTubeService
at Test.main(Test.java:18)
Caused by: java.lang.ClassNotFoundException: com.google.gdata.client.youtube.YouTubeService
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
... 1 more

当我在 Eclipse 中运行时,出现异常:

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:555)
at Test.main(Test.java:18)
Caused by: java.lang.ClassNotFoundException: com.google.common.collect.Maps
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
... 4 more

这里出了什么问题?如何解决这个问题?

最佳答案

你似乎失踪了google-collections API 已弃用,现已替换为 guava对于你的第二个错误(在 Eclipse 中运行)。对于第一个错误,您忘记将所需的 jar 添加到类路径 (gdata-youtube-2.0.jar)。使用

java -cp ...gdata-youtube-2.0.jar... your.java.Program

其中...代表其他所需的库。

关于java - 构建 gdata Java 程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8718370/

相关文章:

javascript - 获取嵌入式 iframe youtube 播放器的当前时间?

javascript - 在 YT.player 中播放视频

Android YouTube 播放器直播

oauth - 客户端检索 Google 联系人图片

google-calendar-api - 检索 Google 日历所有者的电子邮件地址

java - 在hibernate中更新许多记录(批量更新)

java - 使用 Eclipse 生成组合代码

java - Java 中关闭数据库连接

java - 为 Callable 类型线程分配优先级

java - GData 错误 : Intermittent "Invalid root element"