C:\Users\student3>java -cp C:\users\student3 start
Exception in thread "main" java.lang.NoClassDefFoundError: start (wrong name: wo
rk/start)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$100(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.launcher.LauncherHelper.checkAndLoadMain(Unknown Source)
屏幕截图:http://imageshack.us/photo/my-images/835/mt6a.png/ 这是我第一次通过Windows运行课程,会发生什么?
更新
线程“main”中的异常java.lang.NoClassDefFoundError:org / apache / poi / ss / usermodel / Row so ..我应该创建100个目录吗?
答案 0 :(得分:2)
看起来您已将start
类放在名为work
的包中。在这个原因你需要:
start.class
放入名为work
的目录中,然后致电java -cp C:\users\student3 work.start
package work;
行 - 然后该命令将按预期工作。作为旁注:根据惯例,Java类名称总是以大写字母开头。因此,您应该将start
重命名为Start
。
答案 1 :(得分:1)
请注意“错误的名称:工作/开始”部分。这意味着找到了类文件,但它包含一个名为“work.start”的类,但是你想运行一个名为“start”的类。
你可以做两件事: