gpt4 book ai didi

java - 智能表登录期间出现 ClassNotFoundException

转载 作者:行者123 更新时间:2023-12-01 19:52:24 25 4
gpt4 key购买 nike

我正在尝试使用他们的 api 登录 smartsheet,但遇到了由 ClassNotFound 异常引起的 NoClassDefFoundError。

import java.util.ArrayList;
import java.util.Properties;
import java.util.Set;
import java.util.HashSet;
import java.util.List;
import java.io.InputStream;
import java.io.FileInputStream;
import com.smartsheet.api.Smartsheet;
import com.smartsheet.api.SmartsheetFactory;
import com.smartsheet.api.models.Cell;
import com.smartsheet.api.models.Column;
import com.smartsheet.api.models.Row;
import com.smartsheet.api.models.Sheet;
import com.smartsheet.api.models.PagedResult;
import com.smartsheet.api.models.AutomationAction;
import com.google.gson.Gson;
import com.smartsheet.api.SmartsheetBuilder;

public class Main
{
//main method for our main class
public static void main(String args[]) throws Exception
{
/*line that throws error*/
Smartsheet ss = new SmartsheetBuilder().setAccessToken("myAccessToken").build();
// other parts of the program
return;
}
}

堆栈跟踪:

    Exception in thread "main" java.lang.NoClassDefFoundError:     com/fasterxml/jackson/databind/JsonDeserializer        at com.smartsheet.api.internal.SmartsheetImpl.    (SmartsheetImpl.java:279)        at com.smartsheet.api.SmartsheetBuilder.build(SmartsheetBuilder.java:258)        at smartsheet.Main.main(Main.java:27)    Caused by: java.lang.ClassNotFoundException:     com.fasterxml.jackson.databind.JsonDeserializer        at java.net.URLClassLoader.findClass(Unknown Source)        at java.lang.ClassLoader.loadClass(Unknown Source)        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)        at java.lang.ClassLoader.loadClass(Unknown Source)        ... 3 more

抛出此错误有什么特殊原因吗?我尝试使用 smartsheetfactory 访问 smartsheet,如示例程序中所示,但我遇到了相同的错误。

最佳答案

NoClassDefFoundError 当类在编译时存在但由于任何原因在运行时不可用时,就会发生。

诊断和修复这个问题确实很困难,因为问题是类路径中的类文件在运行时不可用。这些点可以解决 NoClassDefFoundError

  1. 确保包含该类的类或 jar 是否可用类路径。
  2. 如果它在应用程序的类路径上可用,那么很可能类路径被覆盖。要解决这个问题,您需要找到您的应用程序使用的确切类路径。
  3. 如果应用程序使用多个类加载器,则类由一个类加载器加载的类可能无法被其他类使用装载机。

J2EE 环境中,即使该类存在,也可能出现 NoClassDefFoundError 错误,因为它对相应的类加载器可能不可见。

关于java - 智能表登录期间出现 ClassNotFoundException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50932063/

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