A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 李彦来 中级黑马   /  2014-5-10 13:52  /  1662 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

我最近刚开始看毕老师的java基础视频,在小黑屏下配置classpath后,在任意盘符下都可以执行*.class文件,但是问什么不能再任意盘符下编译呢?

6 个回复

倒序浏览
classpath指的是.class文件的路径,你指定了classpath之后,执行.class文件当然不需要再指定路径(即可以在任意路径下都可以执行该.class文件)
但是classpath并不能指定.java文件的路径啊
回复 使用道具 举报 1 0
本帖最后由 彭旭文 于 2014-5-10 14:26 编辑

楼主!如果想要在任何环境下运行JAVAC编译,那么必须要配置一下path环境变量,如果只是配置classpath环境的话,那么只是告诉虚拟机class文件的位置所在而已,并没有告诉虚拟机JAVAC编译程序的位置所在。总结一下:
Path环境配置:配置path环境,是告诉虚拟机javac应用程序位置的所在,而且,还可以在这里配置JAVA执行程序的运行路径...
Classpath环境配置:配置classpath环境,是告诉虚拟机class文件位置所在。
你要是想在任何环境下编译,那么你必须要告诉虚拟机javac编译程序的所在和class文件的所在,缺一不可,希望可以帮助到你!
回复 使用道具 举报 1 0
支持三楼说的答案
回复 使用道具 举报
彭旭文 发表于 2014-5-10 14:24
楼主!如果想要在任何环境下运行JAVAC编译,那么必须要配置一下path环境变量,如果只是配置classpath环境的 ...

classpath配置以后只要java + *.class就可以运行了,*.class之前不需要加任何的文件夹名称;但是javac进行编译时在  *.java之前是需要加文件夹名称的,这又是什么原因呢?
回复 使用道具 举报
李彦来 发表于 2014-5-10 20:04
classpath配置以后只要java + *.class就可以运行了,*.class之前不需要加任何的文件夹名称;但是javac进行 ...

不是很明白你所说的意思,能举个例子说明一下吗?
回复 使用道具 举报
彭旭文 发表于 2014-5-11 11:59
不是很明白你所说的意思,能举个例子说明一下吗?

非常感谢,我好想明白了....谢谢.....
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马