请教关于classpath的问题,多谢

oicap1 2012-03-07 11:10:26


c:\aaa下有个类输出"Hello C盘" d:\bbb下有个类输出"Hello D盘"
没有设置classpath的情况下,进入d:\bbb 会运行这个目录下的类(以下所有操作都在d:\bbb这个目录下)
设置classpath=c:\aaa 会运行c:\aaa下的类
当设置classpath=c:\aaa; 还是会运行c:\aaa下的类,但把它删除后再次运行,就会运行d:\bbb下的类
所以暂且认为“分号”是指当前目录(网上查不到)
进一步,设置classpath=c:\aaa 再次运行就会说找不到这个类,也就是说即使当前窗口路径下有这个类,一但设置过

classpath后,而且没有分号,就不行了。
所以很想确认这个分号到底是什么作用,同时为什么最开始时我把系统变量里的classpath删了,也可以执行这个类?

...全文
46 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
NIan_jun 2012-03-07
  • 打赏
  • 举报
回复
别老想这些问题啊
licip 2012-03-07
  • 打赏
  • 举报
回复
classpath=./;....
要这样设置吧。
蛋黄车 2012-03-07
  • 打赏
  • 举报
回复
另外,如果你没有手动指定classpath。
会使用系统环境变量中设置的classpath指定的目录下去查找对应的类
蛋黄车 2012-03-07
  • 打赏
  • 举报
回复
分号是用来隔开多个classpath路径使用的,和你程序没有半点关系

找不到类是因为设置的classpath找不到,或者相应的目录下没有对应的类

一般设置classpath会以 .; 开头, .代表当前目录

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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