问题标签 [classnotfoundexception]

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 回答
506 浏览

serialization - Marshal.load 上的 ClassNotFoundException

我正在尝试在 Scala 中进行元帅转储和加载...

...但是对 Marshal.load 的调用引发了 ClassNotFoundException ...

我也尝试过使用完全限定的类名,但没有运气。我错过了什么?

0 投票
2 回答
1638 浏览

android - Android 应用程序无法在 PathClassLoader 中的某些手机上加载

我有一个应用程序,我们称之为“com.company.foo”,主 Activity 为“FooBar”。在我的 AndroidManifest.xml 中,我有

(其中的点包含我的应用程序中的其他活动)。在这种形式下,它在我的 HTC 愿望和模拟器上运行良好。但是,从市场上下载该应用程序的(非常)少数人报告崩溃与

java.lang.RuntimeException: 无法实例化活动 ComponentInfo{com.company.foo/com.company.foo.FooBar}: java.lang.ClassNotFoundException: com.company.foo.FooBar in loader dalvik.system.PathClassLoader [/mnt /asec/com.company.foo-1/pkg.apk]

有人建议用 替换android:name="FooBar"android:name=".FooBar"这在我的手机和模拟器上仍然可以正常工作,但在其他一些设备上却失败了。如果我完全忽略这个属性,它根本不会让我安装。

有任何想法吗?

0 投票
2 回答
2386 浏览

java - 升级 Android 应用时报 ClassNotFoundException 错误

我已经看过很多关于 ClassNotFoundException 和 Android 的帖子,但我还没有找到我认为是我所经历的原因。

我在 Android 市场上有一个应用程序 -数据计数器小部件。它有 250k+ 的下载量,每次我发布一个新版本时,我都会在 Android Market 的开发者控制台中收到少量 (1-5) 份关于 ClassNotFoundException 的错误报告。

29 份报告来自未指定(“其他”)设备,而 2 份来自 Nexus One。有两条用户消息:“启动时崩溃”和“更新安装期间”。

所有报告都是关于我的接收器(扩展广播接收器)。其中一个接收器相对频繁地被触发,因为它是启动读取和存储 Android 设备数据使用情况的服务的接收器。我有这种感觉,可能是为接收器设置了警报(使用 AlarmManager),然后用户/设备升级了应用程序并且找不到该类 - 可能是因为它位于不同的物理包中,或者它发生在设备进行交换的那一刻。会是这样吗?如果是这样,有没有办法解决它?我不明白为什么几乎所有的报告(比如 90%)都是在新版本发布后的同一天或接下来几天出现的。

我的一个接收器的堆栈跟踪(其他接收器除了类名之外提供相同的堆栈跟踪):

0 投票
3 回答
17258 浏览

java - java ClassNotFoundException LoggerFactory 设置 Quartz 时

所以我使用的是 Quartz jar:quartz-all-2.0.1.jar。从自述文件中,该 jar 应该已设置好所有内容。但是,当我尝试使用创建 SchedulerFactory

我明白了:

我也很困惑,因为在我尝试运行程序之前 Eclipse 没有显示任何错误。谢谢你的帮助。

0 投票
3 回答
6797 浏览

hadoop - hadoop 没有在多节点集群中运行

我有一个自己制作的 jar 文件“Tsp.jar”。同样的 jar 文件在 hadoop 的单节点集群设置中执行良好。但是,当我在包含 2 台机器、一台笔记本电脑和台式机的集群上运行它时,当地图功能达到 50% 时,它会给我一个例外。这是输出

` 此外,集群在执行 wordcount 示例时工作正常。所以我猜这是 Tsp.jar 文件的问题。

1)是否需要有一个jar文件才能在集群上运行?

2)在这里,我尝试在我制作的集群中运行一个 jar 文件。但是仍然会给出一个警告,即找不到 jar 文件。这是为什么?

3)运行jar文件时应该注意什么?除了我写的程序之外,它还必须包含什么?我的 jar 文件包含一个 Tsp.class、Tsp$TspReducer.class 和一个 Tsp$TspMapper.class。终端说,当 jar 文件中已经存在 Tsp$TspReducer 时,它找不到它。

谢谢

编辑

0 投票
2 回答
6783 浏览

java - sqljdbc.jar 的放置位置

我正在开发这个 Java 应用程序,在 eclipse 中一切正常,但是这个程序不能在 Apache Tomcat 7.0 上运行,因为它找不到 sqlserver 驱动程序。

这个应用程序假设连接到一个 sqlserver 2005 数据库,但它不会通过Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver")服务器端的 , 。

我知道这是那条线,因为我发现:

在我的日志文件中。我把sqljdbc.jar,catalinaHome/libcatalinaHome/shared/lib.web-inf/lib

我还编辑了它,所以它从文件夹中catalina.properties读取。shared/lib

我没有想法,任何帮助都会很棒!

更新 #1 - 问题已解决

我手动将 .class 文件包含在 war 文件中,现在它可以工作了。

0 投票
1 回答
395 浏览

java - Equinox:通过包正确导出和导入的类,仍然得到 ClassNotFoundException

我在 OSGi 中开发时遇到了以下障碍。一组负责持久性的包使用com.mysql.jdbc.Driver由另一个(Springsource EBR 提供的)包提供的类。在另一个包中,我将 Quartz 调度程序库配置为将数据库用作作业存储。这也是使用 MySQL 驱动程序完成的。然而,在运行时,我得到一个ClassNotFoundException. 这很奇怪,因为持久性仍然正常工作。更奇怪的是,当我尝试手动加载类时,使用Class.forName("com.mysql.jdbc.Driver")它是正确加载的,暗示该类确实可以加载。

巧合与否,Drools 似乎也发生了同样的事情……我将一些最新的 Drools jar 重新打包为 OSGi 包,部署它们,然后再次运行时ClassNotFoundException弹出。在这两种情况下,所有供应商捆绑包都会添加到清单中所需的捆绑包中。

这个奇怪的问题是否敲响了警钟?我很高兴听到这件事...

0 投票
3 回答
644 浏览

spring - Eclipse Java EE 项目和 Spring:classnotfoundexception

我正在尝试在 Eclipse 中构建一个项目(实际上我使用的是 RAD,所以基本上是 eclipse,当我说“Java EE 项目”时,我的意思是“企业应用程序项目”)。

我的企业应用程序项目(“EAR”项目)有两个模块项目:-服务-网络

服务项目中有一些东西,都是使用 Spring 连接起来的。

Web 项目中有它自己的东西,全部使用 Spring 连接起来。web项目中的UI东西需要用到服务项目中的东西。

这两个项目都作为模块包含在 EAR 项目中。

Web 项目将“服务”项目列为构建路径中的依赖项目,已检查导出,并将其列为 EE 模块依赖项。

不过,我很难让这个工作:

Web 项目中的 spring 上下文当然是在部署应用程序时加载的内容,它从服务项目中导入我需要的 spring 配置。这似乎工作正常。

当 spring 尝试实例化一个 bean 时,它会抛出一个 ClassNotFoundException。在第一个豆子上。

我尝试简单地从我的服务上下文中复制 spring 配置并将其粘贴到我的 web 上下文中,但我得到了相同的 ClassNotFoundException。

我已经尝试在 web 项目的 java 控制器类中实例化该类型的对象(spring 说找不到的类),并且在编译时(无编译错误)和运行时(无异常)都是成功的.

因此,当 spring 尝试使用它们时,我的服务项目中的类在类路径中不可用。

任何想法这里发生了什么和/或我可以做些什么?

0 投票
10 回答
52335 浏览

java - eclipse/tomcat:部署不再起作用(ClassNotFoundException)

我在 Linux Ubuntu Natty Narwhal 中使用 Tomcat 7.0.12 运行 Eclipse Helios Service Release 1。

我一直很高兴地重新部署我的 web 应用程序,直到它显然无缘无故停止工作。显示以下异常:

  • 服务器选项卡中,我有“本地主机上的 Tomcat v7.0 服务器 [已启动,已同步]
  • 我的项目显示为 Tomcat v7.0 Server 的子项
  • 在 Properties, Java Build Path, Source 我有Project/src Source 文件夹
  • 在属性,Web 部署程序集,我有以下映射:/WebContent -> //src -> /WEB-INF/classes/test -> /build/classes
  • 我的src目录在obliquid/servlet/Index.java中包含一个 Servlet
  • 我已经尝试点击Clean Module Work Directory...发布
  • 我试图从 Eclipse 服务器选项卡中停止和启动服务器

我还应该检查什么?谢谢你。

更新尽管现在我正在处理新项目,但我还是回来检查旧项目,而且神秘地现在它正在工作。我想我将无法找到发生了什么。

但是今天在新项目中,我没有明显的原因出现 404 错误,我发现右键单击 Tomcat 服务器并选择“Clean ...”可能很有用。也许它可能会有所帮助。

选择“清理...”表示:“清理将丢弃所有发布状态并从头开始重新发布。您确定要清理所有已发布资源吗?”。选择是,我解决了问题

更新 2它再次发生在新项目上。404 错误,这次它们不会消失。

更新 3原来,这一次我只是没有注意到启动期间由侦听器类引起的异常。解决问题后,它起作用了。我想我应该在凌晨 3 点停止工作。

0 投票
1 回答
3523 浏览

java - java -cp 在 Windows 上的问题

有人可以告诉我为什么 .bat 文件中的这个 java 命令不会在 WinXP 上运行我的 java 程序吗?我的所有 jar 文件都放在一个名为 lib 的文件夹中,我的类文件放在包文件夹 mypackage 中。

我尝试了各种各样的事情都无济于事。一旦程序尝试使用 jar 文件中的某些类,我就会收到 ClassNotFound 错误。所以,我认为我的 -cp 选项有问题。它确实找到了我的 main()。

我想把这个程序提供给对计算机一无所知的人,所以我希望他们能够双击 .bat 文件然后去。

我在mac上写了所有东西,没有太多问题。

我敢打赌主持人会为这个问题打我的头,但我确实广泛搜索了这个问题的答案。

谢谢!约翰

抱歉,我应该输入整个命令行:

java -cp ".;.\libs\jsr173_1.0_api.jar;.\libs\poi-3.7-20101029.jar;.\libs\poi-ooxml-3.7-20101029.jar;.\libs\poi-ooxml- schemas-3.7-20101029.jar;.\libs\resolver.jar;.\libs\xbean.jar;.\libs\xbean_xpath.jar;.\libs\xmlbeans-qname.jar;.\libs\xmlpublic.jar” excelsifter.ExcelSifterController

这一切都在一条线上。我尝试了 / 而不是 \,但这似乎不起作用。我能找到的一切都表明,对于 Windows,你必须使用反斜杠。据我所知,所有依赖项都在这里。至少当我使用基本相同的命令时,我的 mac 不会抱怨。

包含我的 .bat 文件的目录包含 excelsifter 包(一个名为 excelsifter 的文件夹)和包含所有 jar 文件的文件夹 libs。谢谢,约翰