无法在线程" main"中运行程序异常NoClassDefFoundError :(错误的名称:access / control / accessControlUI)

时间:2014-01-14 09:30:32

标签: java raspberry-pi noclassdeffounderror

这个问题是前一个问题的演变得到了回答(我不确定是否开始一个新问题或者在此时继续从前一个问题开始 - 请告诉我): Running java program from terminal

我很难让我的java程序从终端运行。我从以下位置启动它:

pi@raspberrypi ~/JBerries/Access control $

使用此命令:

java -classpath . bin/access/control/accessControlUI

这是一个swing GUI程序,main位于accessControlUI中,它还需要门类,这里是一个图像,所以你可以看到文件:

files

这是我执行所述命令时得到的结果:

Exception in thread "main" java.lang.NoClassDefFoundError:      bin/access/control/accessControlUI (wrong name: access/control/accessControlUI)
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:792)
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
    at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
    at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:482)

我发现了许多类似的问题,但我努力从中汲取任何有用的东西,而且大部分被标记为“太本地化”。

3 个答案:

答案 0 :(得分:2)

进入bin目录并运行以下命令:

java -classpath . access/control/accessControlUI

看起来你的全班名是“access / control / accessControlUI”,而不是“bin / access / control / accessControlUI”。检查accessControlUI类中的包行。

答案 1 :(得分:0)

很多时候java程序编译成功。 如果它在运行程序时出错,那么请检查类的名称是否具有情感性,确保类路径。 在Windows系统中,如果在环境变量中设置classpath并在运行程序中再次设置类路径,则会出错。

答案 2 :(得分:-1)

简短的回答是:

java -classpath bin/access/control/*:. bin/access/control/accessControlUI.class