一、JDK&JRE
在配置java的开发环境之前我们先来了解一下JDK和JRE。
JRE(Java Runtime Environment Java运行环境) |
包括Java虚拟机(JVM Java Virtual Machine)和Java程序所需的核心类库等,如果想要运行一个开发好的Java程序,计算机中只需要安装JRE即可。 |
JDK(Java Development Kit Java开发工具包) |
JDK是提供给Java开发人员使用的,其中包含了java的开发工具,也包括了JRE。所以安装了JDK,就不用再单独安装JRE了。 其中的开发工具:编译工具(javac.exe) 打包工具(jar.exe)等 |
简单而言:使用JDK开发完成的java程序,交给JRE去运行。 |
1.JDK下载地址。。。这个可以去oracle官网下载,如果你嫌麻烦可以在这里下载
32位的JDK1.7(原谅我的版本不高):http://pan.baidu.com/s/1i3fc5ql 提取码为 zh55
64位的JDK1.7(原谅我的版本不高):http://pan.baidu.com/s/1ntAc22d 提取码为 szid
2.安装JDK
采用傻瓜式安装方式,建议安装路径不要有中文或者特殊符号如空格等,当提示安装JRE时,可以选择不安装。
三、配置环境变量
1. 查找jdk的安装目录时发现在其目录下的bin文件夹发现有许多可执行文件但是打开后不是图形界面而是弹出dos窗口
说明这是些命令窗口,例如:Javac 是一个dos命令当然需要dos窗口去执行
2. DOS 命令运行的原理:
当前执行的程序在当前目录下如果不存在,windows系统会在系统中已有的一个名为path的环境变量指定的目录中查找
环境变量:环境指操作系统 ;变量指变化的数据。去找环境变量——我的电脑-属性-高级-环境变量-path。
3.在dos命令行中敲入javac,出现错误提示。
错误原理:当前执行的程序在当前目录下如果不存在,windows系统会在系统中已有的一个名为path的环境变量指定的目录中查找。如果还没有找到,就出现以上的错误提示。
所以进入到 jdk安装路径\bin目录下,执行javac。看到javac参数提示信息。
每次执行java的工具都要进入到bin目录下,是非常麻烦的。可不可以在任何目录下都可以执行java的工具呢?
那就是配置环境变量,配置环境变量有三种方式:
一劳永逸的环境变量改变 | 将jdk中bin目录的安装地址复制到环境变量里去就可以(最好复制到开头因为寻找环境变量时从头到尾查找) |
| 注意:编辑path环境变量,在变量值开始处加上java工具所在目录,后面用 “; ”和其他值分隔开即可。 |
技巧性改变环境变量 | (1)jdk中bin目录地址一般是不改变的,自己定义一个环境变量,自定义一个环境变量值当目录改变时只改变当前的自定义的变量值(防止当安装地址改变时多次改动环境变量会使系统的环境变量被误改) |
| (2)当前定义的环境变量只是个安装地址,要想成为一个变量需用%地址名%—— 通过百分号动态获取环境变量的值 |
临时配置方法 | 1.用help命令找到set(千万别冲动不可直接回车) |
原则:挥一挥手啥也不带走 | 2.Set path(显示环境变量) Set path=。。。。。(这样的改变是全部都改变) 在原有的path上面加上一个新的环境变量时有 set path=新名;%path% 删除环境变量 set path= (临时的,只在当前DOS操作时有效) |
注意:
但是当用START命令时,新开的窗口会沿袭上一个窗口的属性
path里面存储的都是可执行文件
四、classpath的配置
实现在任意目录下都可以执行某一目录下的class文件
| 根据path环境变量的原理,可以定义一个名为classpath环境变量,将要运行的class文件所在目录定义在该变量中。 例:set classpath=c:\ classpath变量值是java类文件的目录 path变量是windows程序文件的目录 |
| 如果没有配置classpath环境变量,JVM只在当前目录下查找要运行的类文件 |
| 如果配置了classpath环境,JVM会先在classpath环境变量值的目录中查找要运行的类文件,但是如果classpath查找不到就报错。 |
| 值的结尾处如果加上分号,那么JVM在classpath目录下没有找到要指定的类文件,会在当前目录下再查找一次(;相当于增加了一次查找当前目录的机会) |
| 值的结尾处如果没有分号,那么JVM在classpath目录下没有找到要指定的类文件,不会在当前目录下查找,即使当前目录下有,也不会运行 |
| 注意:配置classpath时最好不要在结尾处加分号,因为可能找到自己不想要的文件,如果想要在当前目录查找在设置时用“.”如:set classpath=.;E: |
| 初学者一般不会需要classpath的设置 |