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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

Forwhat

中级黑马

  • 黑马币:-87

  • 帖子:58

  • 精华:0

大家在看基础的视频都会遇到这个问题,程序怎么编译、运行不了,其实很多视频都有介绍过的。我在这里做个总结。
首先,安装好java软件后,在dos下敲个java或者javac,一般都会报错的,这就牵扯到换将变量问题,具体配置方式老师的视频里面有介绍的,具体path和classpath到底是干什么用的,这些你们注意过没,(虽然后续的myeclips不需要自己配置环境变量)。
1,环境变量中的path是用来存放你运行的一些”.exe”文件的路径,配置path后,你可以在DOS窗口的任意路径下直接敲对应的.exe文件名就可以直接运行对应的.exe程序。换句话说这个path可以简化你运行程序时在dos窗口下运行指定程序的步骤(不需要在DOS下再重新定位路径)
2,环境变量中的classpath存放的是你编译的”.class”文件对应的路径(javac 命令后生成的class文件所在的位置)。classpath配置完成后可以和1一样直接简化运行”.class”文件时在dos窗口下的运行步骤(不需要在DOS下再重新定位”.class”文件路径),这就要求你的”.java”文件一般要存放在你的classpath路径下,因为一般在DOS窗口下编译“javac 你的文件名.java”程序生成的”.class”文件和你的”.java”文件在同一个文件夹中(也就是所谓的同一个路径)。
这样解释初学者是不是清楚了一点,我自己感觉这个问题不需要深究,毕竟我的很多同学根本不知道这些,但是现在程序员生涯也混的不错。
以上如果有什么问题希望大家指正,我会做修改的,刚学java的同学们大家共勉啊,毕竟万里长征的路咱们还没迈出一小步的,任重道远


5 个回复

倒序浏览
我想询问下,假如我想像配置parth那样配置classpath应该怎么操作?是不是要像当初老师讲的,比如新建1个变量名叫JAVA_HOME(当然这里肯定是别的名字),然后配到path里,是这样吗?
回复 使用道具 举报
本帖最后由 Forwhat 于 2016-1-16 13:42 编辑
宋达思 发表于 2016-1-16 11:48
我想询问下,假如我想像配置parth那样配置classpath应该怎么操作?是不是要像当初老师讲的,比如新建1个变 ...

你的这个新建变量名具体指的是什么,是。java文件的名字。比如叫JAVA_HOME.java?还是别的什么,后面的一个问题没看懂什么意思。path就是你执行的那几个.exe文件,比如java.exe和javac.exe所在的路径。在DOS下敲java和javac命令其实调用的是java.exe和javac。exe文件的。。而classpath应该配置的内容实际上是你javac编译后生成的.class文件所在的位置。。这样说明白了么
回复 使用道具 举报
Forwhat 发表于 2016-1-16 13:36
你的这个新建变量名具体指的是什么,是。java文件的名字。比如叫JAVA_HOME.java?还是别的什么,后面的一 ...

这么说吧,我们可以在任意路径下运行javac,所以我也想在任意路径下直接编译+运行,不然在DOS里我们还是要切换到指定java文件的路径,除非在DOS里设置classpath,所以比如我新建1个环境变量名叫做CLASS_HOME,里面输入常用java文件的存放路径,然后添加到path中,如%CLASS_HOME%;%JAVA_HOME%\bin;......    这个样子,是不是就可以在任意路径下都能直接编译、运行了呢?
回复 使用道具 举报
本帖最后由 Forwhat 于 2016-1-16 14:06 编辑
宋达思 发表于 2016-1-16 13:52
这么说吧,我们可以在任意路径下运行javac,所以我也想在任意路径下直接编译+运行,不然在DOS里我们还是要 ...

不好意思,这个我也不清楚,因为后面企业级开发用到的是myeclipse.就不用纠结path和classpath了,不过这个问题有点意思,有兴趣自己可以试一下,不过估计像我这水平的估计也没几个人知道,PS:我那些干了几年的同学现在连path和classpath都搞不清楚。这问题期待大神解答
回复 使用道具 举报
path  s是存放各种常用命令的环境变量,classpath是存放java运行稳健的路径的环境变量,他两个是被JVM识别的,换个名字不一定被识别,你可以 试试.
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马