问题标签 [noclassdeffounderror]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2754 浏览

java - 如何从实现我的接口的 JAR 存档中加载类?(爪哇)

我有一个问题:我编写了一个实现 STAF 服务的 Java 程序(只是一个测试框架,http://staf.sourceforge.net/)。对于 STAF,我所有的课程都必须在目录 STAF-INF/classes 中。所以我将我的程序打包到一个 JAR 文件 MyProg.jar 中,如下所示:

MyProg.jar

--> STAF-INF/

-------> classes/

------------> com/

----------------->/MyClass.class

----------------->/IInterface.class

---> META-INF/

所以,我的 JAR-Archiv 有两个目录,一个叫 META-INF,一个叫 STAF-INF。在 STAF-INF 中,还有另一个名为 classes 的目录,在 classes 中有我的包“com”,其中包含我的类和我的接口。情况就是这样。这个东西效果很好,而且我使用的STAF框架需要目录结构。

现在,问题来了:我希望其他用户可以获取我的 JAR 文件(MyProg.jar)并将其包含到自己的项目中,以编写实现我的接口 IInterface 的类。

问题 1)当我将 MyProg.jar 文件添加到 Eclipse-Java-Project 时,它找不到 IInterface。如果在 JAR 文件中找不到任何包。我认为这与目录(STAF-INF/classes)有关???

问题 2)当我在 Eclipse 中将我的新项目与我的旧 MyProg 项目连接时,Eclipse 找到了 IInterface 并且我可以实现它(这可能是问题 1 的解决方法,但是:)。然后我将我的新类导出为一个 JAR 文件,我们称之为 NewClassForMyProg.jar。但是,当我从 MyProg 程序中的 NewClassForMyProg.jar 中加载新类时,我遇到了一个异常:

NoClassDefFoundError: com.IInterface

我认为这也与我的目录有关。但我不确定。我认为这也可能是 URLClassLoader 或 ClassPath 的问题......但我不知道......

请帮忙。谢谢。

编辑:

这是应该加载类的方法的代码:

哦,如果我使用该方法加载一个类,它位于我自己的 JAR (MyProg.jar) 中,它可以完美运行。但是通过其他 JAR(如 NewClassForMyProg.jar")我得到一个错误。但是该方法创建了类,问题是创建一个新实例并将其转换为 IInterface ...

0 投票
2 回答
2295 浏览

java - ClassNotFoundException 一个类但不是来自同一个包的另一个?

我正在做一个 grails 项目,我已经在项目的 lib 目录中放置了一个 .jar 文件。

我在 grails 项目中使用的一个 java 文件中不断收到 ClassNotFoundException 的运行时异常。

我有一个这样定义的方法:

我有和导入部分看起来像

这就是引发异常的原因。

但是,如果我将方法更改为

我没有运行时异常。

这里可能发生了什么?我已经验证了 docx4j.jar 文件包含 ParaRPr,并且确实如此。我已经验证这些课程是公开的,而且它们是公开的。另外,我尝试了 org.docx4j.wml 目录中的不同类,有些给了我例外,有些则没有。这怎么可能?

这是完整的堆栈跟踪:

这是 jar 文件中 jar -tf 的输出 - 在其中显示 ParaRPr 类

0 投票
1 回答
139 浏览

java - 在 poi 中调用“write”方法时出现 NoClassDefFoundError

我的代码如下所示:

m_psWorkBook的类型是XSSFWorkbook 当调用“write”方法时会抛出 NoClassDefFoundError 异常,有人遇到过吗?

0 投票
2 回答
1262 浏览

java - Eclipse 在运行时抛出 ExceptionInInitializerError ,在调试时抛出 NoClassDefFoundError

项目 A 依赖于项目 B。

在编译时,一切正常。

在调试时,当调用项目 B 的 bClass 类的静态函数时,我得到 NoClassDefFoundError。

在运行时,我得到 ExceptionInInitializerError。

此外,bClass 有一个静态初始化程序,当我在那里设置断点时,它永远不会到达它——这对我来说似乎很奇怪,但也很有意义,因为可能找不到该类。

知道如何解决吗?据我所知,我已经检查了所有依赖项。

0 投票
2 回答
1313 浏览

clojure - 导入最终类

我无法从 java 包中导入最终类。导入普通类工作正常。例如:

最后一次导入产生 NoClassDefFoundError。这是一个更完整的输出:

知道发生了什么吗?

谢谢!

0 投票
3 回答
1321 浏览

java - 我想从图像创建一个 BufferedImage 但它有这个异常(java.lang.NoClassDefFoundError)

我想从图像创建一个 BufferedImage 但它没有运行。这是什么异常?

代码:

例外:

类路径中的包 contrib.ch.randelshofer.quaqua.util.Images 但如果删除此部分,则会出现另一个异常:

更改为:

它无法编译并显示此消息:

0 投票
2 回答
4174 浏览

java - java.rmi.ServerError: java.lang.NoClassDefFoundError: net/sf/jasperreports/engine/JasperPrint

我在运行在 rmi 注册表中注册的服务器应用程序时遇到问题。在Remote界面中,我有返回的方法JasperPrint。服务器调用时抛出异常:

jasperreports-3.7.5.jar在服务器的类路径中。任何帮助,将不胜感激。

堆栈跟踪:

0 投票
1 回答
2917 浏览

java - Java 类未找到错误

我有一个使用 cxf 创建的 web 服务客户端。当我从 Eclipse 运行时,我没有收到任何错误。但是当我从文件中创建一个 jar 并从 cmd 提示符运行它时,我得到 NoclassDef 异常或 ClassNot found 异常。我已经设置了类路径,java home 正确。

1. 例外

2. 例外

Web 服务在 C# wcf 中,并且客户端是在没有 JAXBinding 元素的情况下创建的。任何帮助将不胜感激。

谢谢,普里亚.R

0 投票
1 回答
5009 浏览

java - 无法初始化类 sun.security.mscapi.SunMSCAPI

我们有客户端-服务器应用程序,我们使用 java web start 启动客户端应用程序。

在尝试打开客户端应用程序时,它首先从 https url(用于 SSO)读取令牌文件,然后打开另一个 HTTPS url。

tokenUrl = 新 URL(协议,nodeIpAddress,端口,tokenFile);URLConnection con = tokenUrl.openConnection();

openConnection() 抛出异常:

java.lang.NoClassDefFoundError:无法初始化类 sun.security.mscapi.SunMSCAPI

任何人都可以帮助这里的确切问题,并请提供必要的解决方法。

谢谢, 苏拉夫

0 投票
1 回答
7281 浏览

exception - 获取 java.rmi.RemoteException:EJB 异常即使类路径、XML、Bean 已正确定义和部署

我在调试这个问题时遇到了麻烦。我正在将我的代码从 Java 1.4 迁移到 JDK 6,将 Weblogic 8.1.5 迁移到 Weblogic 10.3。我已经使用 weblogic 的 DDConverver 实用程序转换了 EJB 的部署描述符。Beans 由无状态会话和实体 bean (2.1) 组成。应用程序以JSP 为前端,EJB 为中间件。在记录时,我正在调用一个内部调用实体 bean 并加载相同的会话 bean。当会话 bean 调用实体 bean 时,我得到以下异常。会话调用成功,唯一的问题是来自会话 bean 的实体调用。

我正在为此使用开发环境。JSP 存储在 C:\MisasiaAppln10.3_DEV\misasia\autodeploy\misasia EJB 部署在 C:\MisasiaAppln10.3_DEV\misasia\servers\AdminServer\upload

异常详情:

示例代码:
从 JSP 调用会话(这很好)

会话中的实体调用(失败)