1.下载安装jdk6 ,成功后打开windows的命令行,输入java命令回车发现windows能够找到java.exe
输入javac命令运行出错,说明windows不认识javac命令。原因:环境变量。
2.环境变量:右击我的电脑,属性,高级属性,环境变量。我们可以看到下半部分的系统变量中有path
这么一条数据。双击进行编辑。里面都是一些文件位置,当我们在命令行中写命令时系统就会在这些位置查找
需要的命令。其中有一条C:\Windows\System32;在这个文件夹下我们可以找到Java.exe 而找不到javac.exe
(当然在path变量中的其他目录下也找不到)。这是因为我们在安装jdk时,jdk自动copy了一份jvm(Java运行
时的虚拟机,Java命令就是来启动虚拟机执行.class 文件的)到C:\Windows\System32下。
3.我们执行Java时先进行编译(javac 命令 将.java文件源码编译成.class文件)在运行(java启动虚拟机)
所以要让windows认识javac命令。做法:找到javac.exe的目录将其考到path变量下。
例如:C:\Program Files\Java\jdk1.6.0_01\bin;目录和目录之间要用分号隔开,默认的情况下就是这个目录
bin下有很多和Java有关的命令。
4.这样我们写一个helloWord.java 并在这个Java目录下进行编译和运行就可以出结果了。
5.大部分情况下我们的.java文件和编译出的.class文件并没有放在同一个目录下,而且还会用到除了
rt.jar(自带的大部分类,例如java.long包下的类,java.sql包....)包以外的其他jar包(也就是我们经常
说的第三方包)。其实.jar文件就是一个压缩文件,解压后可以看到我们经常使用的各种类,接口。
6.要想使用上一步的类我们就要设置classpath变量(javac -cp ....)。同样是在环境变量中设置
这次在用户变量中新建一个classpath,变量名就叫classpath,变量值:我的变量值
为:.;E:\otherjar\*;E:\classes。第一个点就是当前目录(命令行所在目录),第二个变量是我方第三方
包的目录,其中有好多.jar文件,所以用*代表所有。第三个变量时自己写的代码所生产的.class文件。这样
设置好变量保存。这样不论我们的命令行目录在哪里都可以运行java命令了(但是运行javac命令时还是要
在同一目录下的。)
7.个人理解path变量用来识别各种命令,classpath用来为java命令(jvm)指定你所要运行.class文件
的位置。那么jdk自带的API怎么没有写到classpath里呢?由于研究有限不能阐述明白所以就不说明了
在一些java书籍中讲的都很明白。
输入javac命令运行出错,说明windows不认识javac命令。原因:环境变量。
2.环境变量:右击我的电脑,属性,高级属性,环境变量。我们可以看到下半部分的系统变量中有path
这么一条数据。双击进行编辑。里面都是一些文件位置,当我们在命令行中写命令时系统就会在这些位置查找
需要的命令。其中有一条C:\Windows\System32;在这个文件夹下我们可以找到Java.exe 而找不到javac.exe
(当然在path变量中的其他目录下也找不到)。这是因为我们在安装jdk时,jdk自动copy了一份jvm(Java运行
时的虚拟机,Java命令就是来启动虚拟机执行.class 文件的)到C:\Windows\System32下。
3.我们执行Java时先进行编译(javac 命令 将.java文件源码编译成.class文件)在运行(java启动虚拟机)
所以要让windows认识javac命令。做法:找到javac.exe的目录将其考到path变量下。
例如:C:\Program Files\Java\jdk1.6.0_01\bin;目录和目录之间要用分号隔开,默认的情况下就是这个目录
bin下有很多和Java有关的命令。
4.这样我们写一个helloWord.java 并在这个Java目录下进行编译和运行就可以出结果了。
5.大部分情况下我们的.java文件和编译出的.class文件并没有放在同一个目录下,而且还会用到除了
rt.jar(自带的大部分类,例如java.long包下的类,java.sql包....)包以外的其他jar包(也就是我们经常
说的第三方包)。其实.jar文件就是一个压缩文件,解压后可以看到我们经常使用的各种类,接口。
6.要想使用上一步的类我们就要设置classpath变量(javac -cp ....)。同样是在环境变量中设置
这次在用户变量中新建一个classpath,变量名就叫classpath,变量值:我的变量值
为:.;E:\otherjar\*;E:\classes。第一个点就是当前目录(命令行所在目录),第二个变量是我方第三方
包的目录,其中有好多.jar文件,所以用*代表所有。第三个变量时自己写的代码所生产的.class文件。这样
设置好变量保存。这样不论我们的命令行目录在哪里都可以运行java命令了(但是运行javac命令时还是要
在同一目录下的。)
7.个人理解path变量用来识别各种命令,classpath用来为java命令(jvm)指定你所要运行.class文件
的位置。那么jdk自带的API怎么没有写到classpath里呢?由于研究有限不能阐述明白所以就不说明了
在一些java书籍中讲的都很明白。