首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JackCess "NoClassDefFoundError: java/sql/Blob“异常

JackCess "NoClassDefFoundError: java/sql/Blob“异常
EN

Stack Overflow用户
提问于 2021-10-03 09:39:51
回答 1查看 64关注 0票数 1

以下简单的java程序:

代码语言:javascript
复制
import com.healthmarketscience.jackcess.util.OleBlob;

public class Test {

    public static void main(String[] args) throws Exception {
        byte[] data = new byte[100];
        OleBlob oleBlob = OleBlob.Builder.fromInternalData(data);
    }
}

给我一个例外

代码语言:javascript
复制
Exception in thread "main" java.lang.NoClassDefFoundError: java/sql/Blob
    at java.base/java.lang.ClassLoader.defineClass1(Native Method)
    at java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:1010)
    at java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:1088)
    at java.base/java.security.SecureClassLoader.defineClass(SecureClassLoader.java:182)
    at java.base/jdk.internal.loader.BuiltinClassLoader.defineClass(BuiltinClassLoader.java:814)
    at java.base/jdk.internal.loader.BuiltinClassLoader.findClassInModuleOrNull(BuiltinClassLoader.java:735)
    at java.base/jdk.internal.loader.BuiltinClassLoader.loadClassOrNull(BuiltinClassLoader.java:660)
    at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:634)
    at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:182)
    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:519)
    at com.healthmarketscience.jackcess@4.0.1/com.healthmarketscience.jackcess.util.OleBlob$Builder.fromInternalData(OleBlob.java:423)
    at tabellenFahrplan/test.Test.main(Test.java:12)
Caused by: java.lang.ClassNotFoundException: java.sql.Blob
    at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:636)
    at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:182)
    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:519)
    ... 12 more

JackCess文档说,如果出现这样的异常,则缺少依赖项。但是,java/sql/Blob ( Java已经成为Java的一部分)是指什么呢?此外,通过maven,我已经有了依赖项。

  • jackcess-4.0.1.jar
  • commons-lang3-3.10.jar
  • commons-logging-1.2.jar

在JackCess 16.0.2上运行OpenJdk 4.0.1

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-10-03 20:27:23

问题是我丢失了module-info.java文件中的条目。关于我最初的问题是

代码语言:javascript
复制
requires java.sql;

在使用JackCess的过程中,我还遇到了为了访问JackCess数据库中的一些表(但不是对于其他一些表),我也需要

代码语言:javascript
复制
requires java.scripting;
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69423642

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档