Java是如今最流行的编程语言之一,想要运行Java程序需要搭建配置相应的环境,那么,如何配置Java开发环境呢?跟我一起了解一下吧。
一、JDK的配置及安装
Java JDK(JDK包含JRE。SDK是Software Development Kit 即软件开发工具包,可以包括函数库、编译程序等。JRE是Java RuntimeEnviroment是指Java的运行环境,是面向Java程序的使用者,而不是开发者。)
下载后安装,默认安装即可。
二、配置JDK环境变量
在Windows 7中,右键“计算机”单击“属性”,单击“高级系统设置”,单击“高级”,单击“环境变量”。如下图:
在win10配置系统环境变量
右键此电脑,属性,高级系统设置,系统属性,如下图:
在“系统变量”中,设置3项:JAVA_HOME,PATH,CLASSPATH,若已存在则先选中再点击“编辑”,不存在则点击“新建”;
在Windows中,环境变量分为“用户变量”和“系统变量”,它们的区别是,用户变量只对当前的用户起作用,而系统变量则对系统中的所有用户起作用。如果希望在多个用户之间共享环境变量的设置,可以将这些环境变量设置为系统变量,否则,应该使用用户变量,避免影响其他用户。
变量名:Path 值:%JAVA_HOME%in 或 jdk的实际安装路径in
变量名:CLASSPATH 值:.;%JAVA_HOME%in
变量名:JAVA_HOME 值:C:Program FilesJavajdk1.8.0_121 ,路径根据实际安装情况而定
说明:值中多项之间,用英文分号与之隔开。
bin目录下面都是各种编译执行命令;
. 英语句点表示当前路径。
1、JAVA_HOME环境变量的作用
设置JAVA_HOME为了方便引用,设置JAVA_HOME为某个目录路径, 那么以后你要使用这个路径的时候, 只需输入%JAVA_HOME%即可, 避免每次引用都输入很长的路径串; 设置了JAVA_HOME值后,将%JAVA_HOME%"就代表它,配置path和classpath的变量值是可用%JAVA_HOME%"。
例:设置JAVA_HOME
设置path编辑变量值时可用 %JAVA_HOME%in代表C:Program FilesJavajdk-11.0.1
path:这个变量的作用主要就是指定命令的搜索路径。这个就不做过多的解释。例子就是javac、java、jar等一些操作命令。如果你没有配置该路径的话,这些操作命令就会执行不了。
变量值中分量(用分号分开的部分)居前的优先,用户环境变量优先级高于系统环境变量!系统会先检查用户变量,发现变量名有定义,则取值 C:aaa;C:bb,而不会再去检查系统变量是否存在,值是什么。如果用户变量没有定义,再去找系统变量。用户变量优先于系统变量。
2、CLASSPATH环境变量的作用
当javac在编译时,发现程序还引用了其他类时(如ExceptionDemo.java中引用了HelloWorldException类)时,javac程序是如何查找程序引用的其他类的呢?答案是按照CLASSPATH指定的路径加上程序所引用类的包名来查找的。
JDK包含的Java基础类(例如java.lang包中的类)并不需要指定CLASSPATH——Java知道如何找到它们。
当用java运行class文件字节码时, 这个变量设置的目的是为了程序能找到相应的".class"文件,举个例子:你编译一个JAVA程序A.java, 会得到一个A.class的类文件,你在当前目录下执行java A, 将会得到相应的结果(前提是你已经设置CLASSPATH为 . (英语句点)。 现在, 你把A.class移到别的目录下(例如 e: ), 执行java A, 将会有NoClassDefFindError的异常,原因就是找不到.class文件, 现在你把CLASSPATH增加为 .;e: 再运行java A, 一切正常, java命令通过CLASSPATH找到了.class文件!
如果使用1.5及以上版本的JDK,也可以不设置CLASSPATH这个环境变量,也能正常编译和运行Java程序,如果没有设置CLASSPATH环境变量,Java解释器将会在当前路径下搜索Java类。
3、 PATH环境变量的作用
PATH变量用来告诉操作系统到哪里去查找一个外部命令。在Windows中,CMD(指命令行程序cmd.exe)的命令如dir、cd等命令是内部命令,类似于DOS中的常驻命令。这些命令在命令行窗口启动时会自动加载到内存中,不需要到磁盘上去寻找对应的可执行文件,因此即使清空了PATH变量的值也不会影响这些命令的使用。然而,像java这样的外部命令,在执行时必须先由操作系统到指定的目录找到对应的可执行程序,然后才能加载并运行。到哪里去寻找这些程序就是依靠PATH变量来指定的。
原因很简单, 你想在任何时候都使用%JAVA_HOME%injava 等来执行java命令吗,不想如此麻烦,你可以选择把 %JAVA_HOME%in添加到PATH路径下,这样,我们在任何路径下就可以仅用java来执行命令了。(当你在命令提示符窗口输入代码时,操作系统会在当前目录和PATH变量目录里查找相应的应用程序, 并且执行。
变量值中分量(用分号分开的部分)居前的优先,如靠近PATH变量前部的路径中的程序将屏蔽其之后的路径中的同名程序。
用户环境变量优先级高于系统环境变量!系统会先检查用户变量,发现变量名有定义,则取值 C:aaa;C:bb,而不会再去检查系统变量是否存在,且值为多少。如果用户变量没有定义,再去找系统变量。用户变量优先于系统变量。
注:如果系统里边装了2个以上的jdk版本的话,设置环境变量path,要以jdk路径靠前的优先。
以上就是本文内容了,如果想了解更多Java入门知识的话,请关注我们的网站吧。