Netbeans NoClassDefFoundError



我在尝试运行Netbeans(7.2(时遇到了一个反复出现的错误,上次我遇到它时,我发现在某个地方可以将所有文件移动到一个新项目中。这可能会奏效,但我的项目规模太大,这很麻烦。这是痕迹。。。

Exception in thread "main" java.lang.NoClassDefFoundError:  X.X.X.X
Caused by: java.lang.ClassNotFoundException: X.X.X.X
    at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
Could not find the main class: X.X.X.X Program will exit.

它肯定在那里,10分钟前还很好,我还没有碰它。

我确信这与netbeans的自动编译(也许还有代码完成功能(有关。有没有一种方法可以重置所有的内部数据,而不需要将所有内容转移到新项目中。或者任何其他建议。

有一种简单易行的方法:让编译器再次编译该程序。意味着只需更改一些代码,如Putsomecode或在两者之间打印Something,然后再次保存。

以及清洁和建设项目。

右键单击"项目"-->"清理并生成"。

然后再次运行该程序。

我们开始享受吧。这将得到解决。

简而言之,您需要做一些更改,以便编译器需要再次编译该程序。从而解决错误。

这并不是编码错误,我认为问题出在IDE上。

在描述的情况下,它通常可以帮助我删除Netbeans的整个缓存
所以关闭Netbeans
找到带有netbeans缓存的目录并删除其内容
它通常位于[USER_HOME].netbeans7.xvar中-删除var目录中的所有内容。

在windows 10 NetBeans 8.1上,关闭NetBeans,删除Cache目录并重新启动为我解决了这个问题:

缓存位于:

C:Users%UserName%AppDataLocalNetBeansCache

注意:我也可以关闭项目属性,构建,编译,"编译时保存",程序将继续正常运行。

如果禁用"保存时编译",有时也会有所帮助。

  • 转到(项目(属性->编译->保存时编译

(使用Netbeans 8.1进行了测试,当@Ondrej Bozek建议清除缓存时,并没有解决问题(。

运行程序后,您可以再次启用"保存时编译",而不会出现任何问题。

这是随机发生在我身上的,我通过重命名引发错误的类来修复它,然后重新命名。

如果你有任何疯狂的"找不到类"错误,你知道这些错误是假的,因为你没有对类名或位置做任何事情,项目在十分钟前运行良好,并且错误发生在你对其中一个类文件做了一些无害的更改之后,那么,是的,关闭NetBeans删除Cache文件夹。这样做是完全安全的。

该缓存(Netbeans 8.2,Windows 10(位于下面的路径中。注意:只要UserName是一个有效的环境变量名,就可以准确地键入下面的内容。

C:Users%UserName%AppDataLocalNetBeansCache

p.S。如果UserName定义不正确,则会出现错误。然后输入Run cmd,键入UserName=,然后键入C:Users文件夹名。假设它是Dov。这样做:

C: …>set UserName=DOV{这将我的用户名设置为"DOV"}

C: …>set UserName(这只是问UserName是什么(

USERNAME=DOV{上面写着,"嘿,你的UserName是"DOV"}

p.p.S。如果您不确定您的UserName,则发出以下命令:

C: …>set UserProfile

USERPROFILE=C:UsersDov

您的Username是列出的最后一个文件夹名称,即"Dov"。

p.p.p.S.你可能已经注意到cAsE并不重要。

相关内容

  • 没有找到相关文章

最新更新