【问题标题】:java.lang.NoClassDefFoundError caused by GsonGson 引起的 java.lang.NoClassDefFoundError
【发布时间】:2016-05-26 04:40:14
【问题描述】:

我已经创建了一个 Java 应用程序,它将使用 GSON 类,所以我将 gson.jar 添加到我的项目的 ClassPath 中,另外,我包含了这一行

import com.google.gson.Gson

在我的程序顶部。

一切似乎都很好,但是,一旦我的应用程序运行到这一行,

Gson gson = new Gson();

它会弹出错误并说:

org.jboss.resteasy.spi.UnhandledException: java.lang.NoClassDefFoundError: com/google/gson/Gson
...
Caused by: java.lang.NoClassDefFoundError: com/google/gson/Gson

我已经搜索了几十篇文章,并尝试将新变量添加到我的库文件夹中,正如 Vaishali Kulkarnithis 文章中给出的答案所述,但它仍然不起作用。

我是否错过了使用 Gson 对象所需的任何东西?

【问题讨论】:

  • “一旦我的应用程序运行” - 你如何运行你的程序?来自 IDE?哪一个?
  • 是的,我直接从 Eclipse 运行我的程序。
  • 你是如何构建你的应用程序的?此错误意味着虽然库在编译时可用(您能够编译并运行程序)但在运行时不可用。
  • 也许其中一些答案可以帮助您:stackoverflow.com/questions/35305135/…。如果没有,请详细介绍您的问题。
  • @ewanc 我使用的是 Eclipse Luna,我只是使用 Debug 来测试它,我的程序在 Tomcat 7.0 上运行。我回答你的问题了吗?我是 Java 和 Eclipse 的新手,所以如果我误解了你,请告诉我。

标签: java gson classpath noclassdeffounderror


【解决方案1】:

通过从父 pom 中删除 gson 测试范围来解决此问题。

<dependency>
        <dependency>
            <groupId>com.google.code.gson</groupId>
            <artifactId>gson</artifactId>
        </dependency>
</dependency>

【讨论】:

    猜你喜欢
    • 2012-06-01
    • 2019-05-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-07
    • 1970-01-01
    相关资源
    最近更新 更多