问题描述
代码如下:packageNumber;publicclassFrist{staticStrings1="你好";publicstaticvoidmain(String[]args){Strings2="Java";System.out.println(s1);System.out.println(s2);}}出错如下:C:UsersAdministrator>e:E:>cdtempE:Temp>javacFrist.javaE:Temp>javaFristExceptioninthread"main"java.lang.NoClassDefFoundError:Frist(wrongname:Number/Frist)atjava.lang.ClassLoader.defineClass1(NativeMethod)atjava.lang.ClassLoader.defineClass(ClassLoader.java:800)atjava.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)atjava.net.URLClassLoader.defineClass(URLClassLoader.java:449)atjava.net.URLClassLoader.access$100(URLClassLoader.java:71)atjava.net.URLClassLoader$1.run(URLClassLoader.java:361)atjava.net.URLClassLoader$1.run(URLClassLoader.java:355)atjava.security.AccessController.doPrivileged(NativeMethod)atjava.net.URLClassLoader.findClass(URLClassLoader.java:354)atjava.lang.ClassLoader.loadClass(ClassLoader.java:425)atsun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)atjava.lang.ClassLoader.loadClass(ClassLoader.java:358)atsun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:482)
解决方案
解决方案二:
System.out.println(Frist.s1);System.out.println(Frist.s2);
解决方案三:
我运行了一下,没有问题啊
解决方案四:
代码没什么问题java.lang.NoClassDefFoundError“没有找到这样的类”错误表面上看是类的名称错误,其实更有可能是classpath环境变量没有配置好。建议复查类的名称包括大小写,如果有包的情况下,注意类文件放的位置。环境变量classpath配置中有没有小数点“.”,有没有java默认类库的位置,有没有你自己的类文件顶层目录等。建议你还是用个编辑器吧myeclipse啥的!!
解决方案五:
楼主,重新编译和运行下。javac-d.Frist.javajavaNumber.Frist包名和类名联合起来才能唯一确定一个class
解决方案六:
路径没写对,把包名写上再编译一下。
解决方案七:
代码没错,运行时路径写错了
解决方案八:
用eclipse吗
解决方案九:
解决方案十:
你的package语句,加上去试一下
解决方案十一:
程序本身没有问题
解决方案十二:
解决方案十三:
表示一般都是用的myeclipse,没用cmd
解决方案十四:
javac之后你的那个编译成功的class文件现在在你打的包下,运行时加上你的包名试试
解决方案十五:
解决方案:
把packageNumber;删掉运行下就行。看一下http://blog.sina.com.cn/javaprogram007里面有关package的注意事项这篇文章,讲得很清楚。
解决方案:
编译:javac-d.源文件.java运行:java全限定名全限定名:包名.子包名.....类名
解决方案:
还有包名必须全小写,你这大写Number不规范。还不能使用jdk里的包名。
解决方案:
目测是路径问题
解决方案:
运行没问题啊
解决方案:
16l正解
解决方案:
找不到类。路径问题。1、在环境变量里面配置classpath2、编译和运行时都要加包名
解决方案:
没有类.请把系统结构搞好了.
解决方案:
4楼正解,
解决方案:
命令中没有加类的包名
解决方案:
引用4楼xiao472613694的回复:
楼主,重新编译和运行下。javac-d.Frist.javajavaNumber.Frist包名和类名联合起来才能唯一确定一个class
正解。。。
解决方案:
这个帖子还没结,看来楼主是账号一贴游啊
解决方案:
执行的时候是:javaNumber.Frist建议使用eclipse开发工具。。
解决方案:
把这个取掉packageNumber;然后重新javac,再java
解决方案:
带上包名啊~~~~卤煮
解决方案:
最好用ide开发,如myeclispe
解决方案:
我在命令窗口也出现类似问题,classpath路径也配置对了,编译也有加上包名;但是在eclipse下运行也可以的。求大神解决。
解决方案:
E:Temp>javacFrist.javaE:Temp>javaNumber.FristExceptioninthread"main"java.lang.NoClassDefFoundError:Number/Frist
解决方案:
运行时带上包名
解决方案:
引用33楼Std_Wang的回复:
运行时带上包名
带上了呀
解决方案:
Eclipse呢?!
解决方案:
。。。java编译是其实不识别包的,要编译带包的,要加-d.的,就是javac-d.x.java
解决方案:
package啊我用的import导入包的
解决方案:
找不到class,因为你的class指定包了,在Number下。所以,你执行First时,必须带上路径,在当前路径下没有First。
解决方案:
话说楼主想写的单词是不是First啊~~
解决方案:
E:Temp>javaNumber.Frist还有,包名最好用小写