gpt4 book ai didi

java - 来自InputStream的NoSuchMethodError : JsonFactory.

转载 作者:行者123 更新时间:2023-12-01 14:43:41 26 4
gpt4 key购买 nike

我正在尝试获取 Google API OAuth2 身份验证的干净代码示例。我的代码主要基于 https://code.google.com/p/google-api-java-client/wiki/OAuth2 的解释

我偏离了本教程,因为我希望我的库由 Maven 管理,并且我想创建一个不依赖 Google Apps Engine 的项目。

每次我尝试在 Glassfish 服务器上运行该项目时,都会收到以下错误,可能表明存在依赖项冲突。

java.lang.NoSuchMethodError:com.google.api.client.json.JsonFactory.fromInputStream(Ljava/io/InputStream;Ljava/lang/Class;)Ljava/lang/Object;

我的 pom.xml 的相关部分:

<dependencies>
<dependency>
<groupId>com.google.api-client</groupId>
<artifactId>google-api-client</artifactId>
<version>1.14.1-beta</version>
</dependency>
<dependency>
<groupId>com.google.http-client</groupId>
<artifactId>google-http-client</artifactId>
<version>1.14.1-beta</version>
</dependency>
<dependency>
<groupId>com.google.api-jackson2</groupId>
<artifactId>google-api-jackson2</artifactId>
<version>1.14.1-beta</version>
</dependency>
<dependency>
<groupId>com.google.apis</groupId>
<artifactId>google-api-services-calendar</artifactId>
<version>v3-rev34-1.14.1-beta</version>
</dependency>
<dependency>
<groupId>com.google.oauth-client</groupId>
<artifactId>google-oauth-client</artifactId>
<version>1.14.1-beta</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>2.1.3</version>
</dependency>
<dependency>
<groupId>com.google.oauth-client</groupId>
<artifactId>google-oauth-client-servlet</artifactId>
<version>1.14.1-beta</version>
</dependency>
<dependency>
<groupId>javax.persistence</groupId>
<artifactId>persistence-api</artifactId>
<version>1.0.2</version>
</dependency>
<dependency>
<groupId>javax.validation</groupId>
<artifactId>validation-api</artifactId>
<version>1.1.0.CR2</version>
</dependency>
<dependency>
<groupId>javax.faces</groupId>
<artifactId>jsf-api</artifactId>
<version>2.1</version>
</dependency>
<dependency>
<groupId>javax.enterprise</groupId>
<artifactId>cdi-api</artifactId>
<version>1.1-PRD</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.0.1</version>
</dependency>
<dependency>
<groupId>javax.annotation</groupId>
<artifactId>jsr250-api</artifactId>
<version>1.0</version>
</dependency>
<dependency>
<groupId>javax</groupId>
<artifactId>javaee-web-api</artifactId>
<version>6.0</version>
</dependency>
</dependencies>

请帮助我找到此错误的根本原因,因为所使用的依赖项对我来说似乎很好,并且我找不到类似的问题案例。

最佳答案

jackson2 的正确依赖项是:

<dependency>        
<groupId>com.google.http-client</groupId>
<artifactId>google-http-client-jackson2</artifactId>
<version>1.14.1-beta</version>
</dependency>

一旦我改变了这一点,项目就成功构建了,并且我能够很好地调用有问题的方法。

类路径上可能有其他东西在干扰。我建议您使用 -verbose: class 运行程序(有关更详细的说明,请参阅 here),这将显示任何冲突。

关于java - 来自InputStream的NoSuchMethodError : JsonFactory.,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15683260/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com