YouTube Java API问题

Kar*_*ran 4 java youtube gdata-api youtube-api

我正在尝试使用YouTube Java GData库/ API获取特定用户的视频列表.

但是,当我尝试使用创建服务时YouTubeService service = new YouTubeService("Cyphon-MyCampusPulse-1", YOUTUBE_API_KEY);,我得到以下运行时异常:

Exception in thread "main" java.lang.NoClassDefFoundError: javax/mail/MessagingException
at scrapers.YouTubePulseScraper.<init>(YouTubePulseScraper.java:37)
at scrapers.YouTubePulseScraper.main(YouTubePulseScraper.java:153)
Caused by: java.lang.ClassNotFoundException: javax.mail.MessagingException
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:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
... 2 more
Run Code Online (Sandbox Code Playgroud)

我不确定异常与我正在做的事情有什么关系.任何提示都表示赞赏.

And*_*anu 7

您需要将JavaMail jar添加到包含javax.mail.MessagingException的类路径中.你可以在这里得到它:http://www.oracle.com/technetwork/java/index-138643.html

编辑:从文档中提取:

GData Java客户端库具有以下外部依赖项.以下部分将介绍如何在您喜欢的操作系统(或您在工作中遇到的操作系统)上安装这些依赖项.

  • JDK(Java Development Kit)1.5+版
  • Apache Ant版本1.7+
  • Sun的JavaMail API 1.4+中的mail.jar
  • Sun的JavaBeansActivationFramewrok中的activation.jar.这仅适用于媒体特定API,包括文档列表数据API,Picasa网络相册API和YouTube数据API.
  • Sun的Servlet API版本2.3+中的servlet.jar.只有在'sample.authsub'或'sample.gbase.recipe'包中执行代码示例时才需要这样做.

只有特定样本才需要一些.jar依赖项,但为了避免构建错误,最好只获取所有内容.选择要继续的操作系统: Windows, Mac OS XLinux.

我已经添加了这个,因为如果你错过了一个依赖关系,你可能会错过其他依赖关系,所以你应该仔细检查你有什么.