赞
踩
目录
2.输入java测试时,提示:'JAVA' 不是内部或外部命令
jdk配置环境变量对于初学者来说,真的“很难”!你可以从网上直接把别人的路径复制过来,也许你也会出现别人没有出现的诸多问题,说起来都是泪啊!当然我不是不提倡去复制别人的,不会就去学,这种心态很好,可是却被磨掉了!
下面我就总结一下我在学习java中配置环境变量的一些感悟吧(其中不乏网上找到的内容,不喜勿喷。)
jdk是oracle的产品,有三个版本:
SE(JavaSE),standard edition,标准版,是我们通常用的一个版本,从JDK 5.0开始,改名为Java SE。
EE(JavaEE),enterprise edition,企业版,使用这种JDK开发J2EE应用程序,从JDK 5.0开始,改名为Java EE。从2018年2月26日开始,J2EE改名为Jakarta EE 。
ME(J2ME),micro edition,主要用于移动设备、嵌入式设备上的java应用程序,从JDK 5.0开始,改名为Java ME。
没有JDK的话,无法编译Java程序(指java源码.java文件),如果想只运行Java程序(指class或jar或其它归档文件),要确保已安装相应的JRE。
初学者一般用SE版本的,至于具体版本号1.7/1.8这样的就随便选一个就可以(对初学者而言关系不大)。放个官网下载链接,下面这张图是链接里面截的,电脑什么系统就选哪个下载。
这里简单介绍下:JDK(Java Development Kit) 是 Java 语言的软件开发工具包(SDK)。一般下载的安装包都是集成的,安装时都有两个东西要安装的,一个jdk、另一个是jre(Java Runtime Environment,即java运行环境),其实jdk里面就有jre,所以第二个跳出安装提醒的时候,可以选择不安装。如果要安装,不要和jdk装在同一个目录;建议新建一个(java)文件夹,里面新建两个文件夹,分别是jdk 、jre(最好加上版本号),安装在这个目录下。
注意:要记住你的jdk的安装路径,下面要用到的。
一般常规设置分为3个步骤:Javahome、path和classpath,下面将逐一讲解。
(我的电脑-系统属性-高级系统设置-环境变量-系统变量)或(此电脑-右键-属性-高级系统设置-环境变量-系统变量)
选择【新建】,在变量名和变量值输入框内分别输入(注意是蓝色字体的内容,不要加空格等多余符号进去!):
注意:这个变量值是jdk的安装目录,上面我让你记的那个,这个是我的安装路径。你要复制自己的路径,注意:强烈建议复制,不能手打,不要太相信自己!不会复制的看下图:
再次选择【新建】,在变量名和变量值输入框内分别输入:
最后找到Path变量,点击编辑,添加(就是新增的意思,初学者要注意!!!不要动之前里面的环境变量,不然出事后果自负!!!),下面的内容(分号表示分隔,如果前面有内容,就要加分号分开,最好前后都加上分号):
它指向jdk的安装目录,Eclipse/NetBeans/Tomcat等软件就是通过搜索JAVA_HOME变量来找到并使用安装好的jdk。是为了方便而设置的。因为总是更改系统环境变量(主要是path)设置是很危险的,以后如果安装位置改变了,改一个JAVA_HOME即可达到该三个环境变量的效果。
作用是指定类搜索路径,要使用已经编写好的类,前提当然是能够找到它们了,JVM就是通过CLASSPATH来寻找类的。我们需要把jdk安装目录下的lib子目录中的 dt.jar 和 tools.jar 设置到CLASSPATH中。当然,当前目录“.”也必须加入到该变量中,也就是让其先搜索当前目录下是否有指定类(学过web开发的应该会有感觉吧),这个"点"很重要。
在网上找的资料,一般设置有这几个rt.jar、 dt.jar 和 tools.jar 。其实对于这个问题大家各持己见,争议也比较大,我也很纠结,反正照着我这样设置肯定是没有问题的!
下面--引用一大佬的看法以供参考:
dt.jar和tools.jar位于:{Java_Home}/lib/下,而rt.jar位于:{Java_Home}/jre/lib/下,其中:
rt.jar是JAVA基础类库,也就是你在java doc里面看到的所有的类的class文件
dt.jar是关于运行环境的类库tools.jar是工具类库,编译和运行需要的都是toos.jar里面的类分别是sun.tools.java.*; sun.tols.javac.*;
在Classpath设置这几个变量,是为了方便在程序中 import;Web系统都用到tool.jar。
1. rt.jar
rt.jar 默认就在Root Classloader的加载路径里面的,而在Claspath配置该变量是不需要的;同时jre/lib目录下的其他jar:jce.jar、jsse.jar、charsets.jar、resources.jar都在Root Classloader中
2. tools.jar
tools.jar 是系统用来编译一个类的时候用到的,即执行javac的时候用到
javac XXX.java
实际上就是运行
java -Calsspath=%JAVA_HOME%\lib\tools.jar xx.xxx.Main XXX.java
javac就是对上面命令的封装 所以tools.jar 也不用加到classpath里面(不过我一般都加进去了)
3. dt.jar
dt.jar是关于运行环境的类库,主要是swing的包 在用到swing时最好加上。
下面--引用另一个观点以供参考:
作用是指定命令搜索路径,在命令行下面执行命令如javac编译java程序时,它会到PATH变量所指定的路径中查找看是否能找到相应的命令程序。我们需要把jdk安装目录下的bin目录增加到现有的PATH变量中,bin目录中包含经常要用到的可执行文件如javac/java/javadoc等待,设置好PATH变量后,就可以在任何目录下执行javac/java等工具了。
(Win+R进入命令窗口,输入cmd,按enter,)
(注:下面前三个条件必须同时满足算最终配置成功!!)
若出现如下图所示(即出现jdk版本号),则说明安装jdk正确:
若出现如下图所示,则正确:
若如下,则正确:
1.新建一个文本文档改名为:HelloWorld.java(注意扩展名为".java")
2.代码内容:
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello World!");
}
}
3.Win+r 打开DOS命令窗口
运行cmd命令
运行cd 该文件所在文件夹命令
运行javac HelloWorld.java命令(注javac为编译命令)
如果成功,会在该目录下生成HelloWorld.class文件
运行java HelloWorld命令 (注java为运行命令)
如果成功,会在屏幕上显示:
Hello World!
下面这张图是效果图:
如果电脑不会修改扩展名,请参考下图进行修改:
一般情况下 java -version 都可以出来jdk版本号,但是后面问题就很多了!
提别提醒:如果出错了,每次修改后,都要退出关闭cmd命令窗口,重新进入再验证,这样才有效!!
(1)配置环境时,分号是英文的。(2)路径尽量复制,不要自己手打。(3)JAVA_HOME等的大小写是否一致。
一般是path没有配置好,参考解决方法如下,按顺序一个个尝试:
(1)查看是否符合上述要求。(2)与其他变量分隔要用英文的分号。(3)把java的这个路径移到第一个。
(4)把JAVA_HOME用原路径(这里是:F:\Java\jdk1.8.0-144)替代。
以上四种方法一般都可以解决问题,至于为什么要这样,我就不知道了……(捂脸)
一般是CLASSPATH没有配置好,参考解决方法如下:
看是否误把“.;”放在最后面了,把它改在最前面,因为一般情况下.class文件都是生成在.java文件的同一目录下,要先检索当前目录,但是其实方后面也是有效的,那为什么不行呢?至于为什么要这样,我就不知道了……(捂脸)
(2019年9月4日更新)
因为我的电脑的系统为Windows10,按照这一波操作是可以配置成功的;按理说Windows10应该都使用,如果是Windows7等系统应该也差不多,可参考使用。
OK,就这么多了,个人拙见,希望能帮到你,如发现有错误,麻烦留言提醒,谢谢。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。