我的代码如下package sample;public class test{public static void main(String args[]){System.out.println("Helloworld!");}}用javac test.java命令没问题,然后再java test就会报错:Exception in thread "main" java.lang.NoClassDeFoundError:test<wrong name sample\test>.....但是我把代码开头那个package sample;去掉就可以运行,出现Helloworld!这啥原因?应该不是环境变量配置问题吧?高手们帮忙呀
3 回答
莫回无
TA贡献1865条经验 获得超7个赞
package sample
需要在类文件外增加一个名为sample的文件夹.
Java包的机制与计算机目录的结构有关系,
你运行带package sample的类文件时,需要在sample文件夹的上一层目录进行运行就可以了.
你删除了package sample就不需要再有文件夹了,所以可以正确运行.
胡子哥哥
TA贡献1825条经验 获得超6个赞
所谓package实际就是文件夹
你把某个程序放到某个package里面,就是放到某个文件夹里面了,当然需要在运行的时候写上相应的路径才能顺利运行,要不然怎么找得到你那个程序呢
java sample.test 就行了
添加回答
举报
0/150
提交
取消