Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/352.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
谷歌日历API示例-纯Java_Java_Google Api Java Client - Fatal编程技术网

谷歌日历API示例-纯Java

谷歌日历API示例-纯Java,java,google-api-java-client,Java,Google Api Java Client,我试图建立一个基本的例子,这里有文档记录 我似乎无法运行应用程序而不出现一个或另一个错误 在我运行它之前没有错误,但是当我运行它时,我会得到以下运行时错误 java.lang.NoClassDefFoundError: org/mortbay/jetty/Handler at com.azinky.CalendarSample.authorize(CalendarSample.java:95) at com.azinky.CalendarSample.main(CalendarS

我试图建立一个基本的例子,这里有文档记录

我似乎无法运行应用程序而不出现一个或另一个错误

在我运行它之前没有错误,但是当我运行它时,我会得到以下运行时错误

java.lang.NoClassDefFoundError: org/mortbay/jetty/Handler
    at com.azinky.CalendarSample.authorize(CalendarSample.java:95)
    at com.azinky.CalendarSample.main(CalendarSample.java:107)
Caused by: java.lang.ClassNotFoundException: org.mortbay.jetty.Handler
然后在我的类路径中包括两个jar文件,jetty-6.1.26.jar和jetty-util-6.1.26.jar

现在我在运行时遇到另一个错误

java.lang.NoClassDefFoundError: javax/servlet/http/HttpServletRequest
    at com.google.api.client.extensions.jetty.auth.oauth2.LocalServerReceiver.getRedirectUri(LocalServerReceiver.java:98)
    at com.google.api.client.extensions.java6.auth.oauth2.AuthorizationCodeInstalledApp.authorize(AuthorizationCodeInstalledApp.java:76)
    at com.azinky.CalendarSample.authorize(CalendarSample.java:95)
    at com.azinky.CalendarSample.main(CalendarSample.java:107)
Caused by: java.lang.ClassNotFoundException: javax.servlet.http.HttpServletRequest
我的机器上是否需要安装jetty才能运行此示例?文件上没有说我需要

这是我的完整课程路径

第一个类需要org.mortbay.jetty.jar,第二个类需要javax.servlet.jar


下载它并将其添加到您的类路径中,或者如果您使用maven,请查看maven存储库并将缺少的依赖项添加到pom.xml中。

Jens的答案是正确的,您需要一些额外的JAR。Jetty用于构建一个快速的web服务器,以使用户的OAuth进程更加平滑。使用GoogleAPI不是强制性的,这就是为什么它没有在wiki中列出,但它对命令行应用程序有帮助

为了更好地管理依赖关系,我强烈建议您使用。由于您链接到的测试项目有一个pom.xml文件来描述其依赖关系,因此使用Maven构建项目将更容易

如果使用Eclipse,可以通过运行以下命令告诉maven为Eclipse构建项目:

mvn eclipse:eclipse

你会找到更多信息


Eclipse还有几个插件可以更容易地与Maven集成,IntelliJ是直接集成的。

我将尝试一下。在依赖项中没有提到这一点。此项目使用Maven,因此不需要手动下载required@KrzysztofWolny在OP的问题中,没有任何东西是他使用的maven@Jens我理解他试图从中运行示例,这是一个gradle/maven项目。也许我错了…@Jens暗示在MVN项目中手动操作jar是我否决答案的一个原因,是的。我想删除这个否决票,但我不能,因为我得到的错误,这个答案是编辑。