java test/test

dog 2003-01-18 06:38:19
我在目录/software/test/下有test.java,我要在test目录上运行,我的命令是:

java test/test,错误是:Exception in thread "main" java.lang.NoClassDefFoundError: test/test (wrong name: test)。不会每次都要在/app/test/下运行吧。我在其他目录下用绝对路径难道不行?java太讨厌了。

...全文
28 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
teaky2002 2003-01-18
  • 打赏
  • 举报
回复
可以到其他目录运行啊。只要符合java寻找文件的规范就行。
Java解释器的工作程序如下:首先,它找到环境变量CLASSPATH(将Java或者具有Java解释能力的工具——如浏览器——安装到机器中时,通过操作系统进行设定)。CLASSPATH包含了一个或多个目录,它们作为一种特殊的“根”使用,从这里展开对.class文件的搜索。从那个根开始,解释器会寻找包名,并将每个点号(句点)替换成一个斜杠,从而生成从CLASSPATH根开始的一个路径名(所以package foo.bar.baz会变成foo\bar\baz或者foo/bar/baz;具体是正斜杠还是反斜杠由操作系统决定)。随后将它们连接到一起,成为CLASSPATH内的各个条目(入口)。以后搜索.class文件时,就可从这些地方开始查找与准备创建的类名对应的名字。此外,它也会搜索一些标准目录——这些目录与Java解释器驻留的地方有关。

dog 2003-01-18
  • 打赏
  • 举报
回复
为什么不能其他目录下运行?就像ls,我可以ls /software/test 也可以
cd /software/test
ls
hoxisoft 2003-01-18
  • 打赏
  • 举报
回复
为什么要到“其他目录下运行”

在CMD下进入/software/test

然后:

javac test.java
java test

不是很好吗???
study_body 2003-01-18
  • 打赏
  • 举报
回复
不要说java讨厌,当你真正掌握它的时候(我是个初学者)你就不会有这种感觉了
dog 2003-01-18
  • 打赏
  • 举报
回复
/software/test/下有test.java 和test.class
我要在其他目录下运行,应该是什么命令?
xue_sharp 2003-01-18
  • 打赏
  • 举报
回复
/software/test

javac test.java
java test
bluesmile979 2003-01-18
  • 打赏
  • 举报
回复
java test.test?

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧