黑马程序员技术交流社区

标题: java环境变量配置问题 [打印本页]

作者: 温暖的小白    时间: 2015-3-9 21:17
标题: java环境变量配置问题

刚开始学JAVA基础,看毕向东的基础视频时有一个环境变量配置问题,说可以配置path这样无论是在哪个盘下都可以直接启动JVM,或者配置classpath使得在任意目录下都能执行Java程序,那么问题来了,在执行javac时,能不能也定义一个路径使源文件在任意路径下都能编译并生成class文件?

我很菜,可就是想知道这个问题,求嘲笑,求解答
作者: 弹剑高歌踏浪行    时间: 2015-3-10 17:42
你看毕老师每次都是进入指定目录后在开始生成class文件就知道不行了哦
作者: 尚巾仁杰    时间: 2015-3-10 21:59
path环境变量是系统环境变量中的一种,它用于保存一系列的路径,每个路径之间以分号分割。当在命令行窗口中运行一个可执行文件时,操作系统首先会在当前目录下查找是否存在该文件,如果不存在,会继续在path环境变量中定义的路径下寻找这个文件,如果仍未找到,系统会报错。由于“java”命令和“javac”命令位于同一个目录bin中,因此在配置完path环境变量后,同样可以在任意的路径下执行“java”命令。

classpath环境变量也用于保存一系列的路径,它和path环境变量的查看和配置方式完全相同。当java虚拟机需要运行一个类时,会在classpath环境变量中所定义的路径下寻找所需的class文件。

path与classpath的区别:
path:先在当前目录下找,没找到,再到path环境变量配置路径中找,还未找到,就报错。——先目录后路径。
classpath:先查找配置路径,再在当前目录路径下查找,没找到且无分号,则报错,有分号再在当前根目录路径下查找。先路径后目录。

因此,如果你想任意路径下都能编译java文件并生成class文件,是不可行的,只有在java文件所在的目录下才可以编译并生成class文件。即使假设可行,那么生成class文件会分布在任意目录下,文件管理起来也不是很方便。

作者: 温暖的小白    时间: 2015-3-10 22:19
弹剑高歌踏浪行 发表于 2015-3-10 17:42
你看毕老师每次都是进入指定目录后在开始生成class文件就知道不行了哦

我就是想有这样的方法就好了,看来是我想多了,这样不行吧,还是得先进去当前目录,呜呜!




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2