我们刚开始学习java,都会面临编程路上的第一个小怪兽:配环境变量。

网上很多教程给了我们很多的参考,但我们是否有想过为什么要这么配呢?下面我就是想重点探讨一下为什么?并且希望以后你们不但能配,还知道这么配,不至于被这个傲娇兽耽误了学习的兴趣233

一、JAVA_HOME

1.这个配置主要是为了方便你后续的一些更改操作,也可以说是满足所谓的“归一原则”。

列如:你将一下东西(假如 书)放到了一个蓝色的箱子里,而蓝色的箱子你现在把它放在了墙角落。可那一天,你想更改一下,房间的布局了,将箱子移到了 厕所(⊙﹏⊙)b,那你在想要找书的时候,你会怎么找呢?是去墙角吗?不是吧,是直接去找蓝色的箱子。

那现在你或许就懂了,蓝色的箱子就是“JAVA_HOME”,而里面的书,就是你想要放入的东西(“你jdk的安装目录”)。

2.那当你理解这个蓝色箱子的用途后,你就会发现,它是可有可无的,但我们一般配它是为了更方便的使用,你总不希望每天抱着书走吧……

现在我们把它删掉

删掉了

将path路径写成绝对路径

发现了吗?,依然是能运行的啊

那么竟然提到了PATH,那下面我们就来讲讲PATH的用途及配置好了

二、PATH的配置

path有什么用呢?

1.告诉操作系统去哪里找你的java相关程序

2.便于你可以直接使用java指令(因为被操作系统找到了呗)

怎么配置:

1.就像我上图一样将它配成“你安装的jdk中的bin目录下”,为什么是bin目录下呢?因为它是工具包的目录,java中的工具都是在这个目录下,列如:你们以后会非常熟悉的javac.

编译指令

2.设置成相对路径,这就涉及到前面的JAVA_HOME了,也就是说为了方便,你可以直接通过箱子找到你要的,至于具体的书是什么,你就在箱子中好好翻找吧

创建一个JAVA_HOME,另外注意一个小细节,变量值的后面 不要加 “ ;”,因为你加了分号,就相当于告诉操作系统搜寻结束了,你要光找到箱子,这样没什么问题,可关键是你要找的是箱子里面你具体想要的书啊,当然,你们也可以加一下分号试一下

配置PATH

搞定!

好,大家也可能发现了,我没有配置CLASSPATH,然而jdk已经可以正常使用了,为什么呢?

三、CLASSPATH

其实你不配它也没有多大的影响,因为java虚拟机在寻找.class文件中会默认先从不目录下找,所以这不一下就给提溜出来了。一般别人会让你将

CLASSPATH=“.;”配置成这样,是因为 “.” 就是寻找本目录下的意思,你这样配置当然更为严谨一些。

也有人这样配

CLASSPATH=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;‪

这主要是因为在后面的学习中,我们会使用到java很多的第三方工具包,而这个包大多就在上面配置的路径下,所以当你们的程序涉及到这些的时候,classpath会指引jvm或编译器寻找到他们所想要的工具。当然你们也可以将自己将要使用的包的路径添加到 它的后面。

这也是配置classpath的意义。

发散思想:

1.你们有注意到 我们安装jdk的时候,还提示我们安装了一个jre吗?而jdk中是有jre的,这不是 多此一举吗?

就是多此一举啊(⊙﹏⊙)b

jre主要是给我们提供一个使用java的运行环境,jvm,java.exe也包含在这里面,然而,我们作为一个开发者并不满足于只是要使用,还要编译,所以,我们需要jdk中编译器以及工具包。所以啊,你把jre删了也没问题……我没让你删jdk中的jre啊,删错了别找我233

2.其实classpath真的不需要配啊,因为你们编写程序所要使用到的第三方软件(eclipse……)都已经默认的将你们的classpath给补全了,所以你即使以后要使用到第三方包,也仅仅只需要导入你使用的软件就好了。

3.欢迎补充:)

关于java“配置环境变量”的那些事的更多相关文章

  1. java 配置环境变量

    使用java编程首先需要安装jdk,然后还需要给你的电脑配置环境变量,下面就用图文演示如何配置环境变量: 1.右键我的电脑 -> 属性 2.点击“高级系统设置” 3.点击“环境变量” 4.在系统 ...

  2. Java配置环境变量

    首先,你应该已经安装了Java 的 JDK 了,笔者安装的是:jdk-7u7-windows-x64 接下来主要讲怎么配置 Java 的环境变量 1.进入“计算机”的“属性”选项后如图 2.选择“高级 ...

  3. Java配置环境变量、方法和原因

    首先,你应该已经安装了 java 的 JDK 了,笔者安装的是:jdk-7u7-windows-x64 接下来主要讲怎么配置 java 的环境变量,也是为了以后哪天自己忘记了做个备份 1.进入“计算机 ...

  4. 2015 11 26 java 配置环境变量

    使用java软件, 须进行改变配置环境变量.需要2步. 第一,在电脑中找到配置环境变量的位置: 我的电脑,属性,高级,环境变量. 第二,进行添加两个变量,更改一个变量: 1,变量名:JAVA_HOME ...

  5. java配置环境变量-及原因

    为什么java要配置环境变量? 那就要从java的编译和解析过程说起 java文件的编译和解析过程 一.一个hellow.java文件,要经历先编译(变成hellow.class),再解析(解析成机器 ...

  6. 从java的开始,java概述,java配置环境变量

    一.java开发入门 java 概述   Java划分为三个技术平台:JavaSE(标准版,含Java基础类库),JavaEE(企业版,技术平台),JavaME(小型版,小型产品.嵌入式设备) Jav ...

  7. java配置环境变量,无法也行javac问题

    最近换了公司,搭建开发环境的时候出了点小差错,写篇随笔记录下,下载jdk的时候要选择符合自己电脑的jdk版本,位数. 笔者之前下载的时候没注意下了个32bit的jdk,开发用eclipse的时候打不开 ...

  8. Java 配置环境变量教程

    [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/3 ...

  9. java配置环境变量 jdk1.8

    1.首先第一步安装JDK window系统安装java 下载JDK 首先我们需要下载java开发工具包JDK,下载地址:http://www.oracle.com/technetwork/java/j ...

随机推荐

  1. C++之函数fgetc和fputc、fgets和fputs、fread和fwrite、fscanf和fprintf用法小结

    #include <iostream> #include <cstdio> #include <cstdlib> using namespace std; int ...

  2. ssh curl 命令理解

    使用一条命令抓取一本小说 curl "http://www.23hh.com/book/1/1019/"|iconv -c -f gbk -t utf8 |sed 's/" ...

  3. BroadCastReceiver相关知识--读书笔记

    2013-12-30 16:55:07 1. BroadCastReceiver是Android四大组件之一,本质上是一个系统级的监视器. 2. 每次BroadCast事件发生后,系统都会创建对应的B ...

  4. Rhel6-heartbeat+lvs配置文档

    系统环境: rhel6 x86_64 iptables and selinux disabled 主机: 192.168.122.119 server19.example.com 192.168.12 ...

  5. SDK(SoftWare Development Kit)介绍

    ctrl+alt+shift+s进入项目设置页面: SKDs的界面可以设置SDK. 点击到project 可以为project选择sdk 如上图标注 1 所示,IntelliJ IDEA 支持 6 种 ...

  6. JEvaluator Jscript.net

    using Microsoft.JScript; using System; using System.CodeDom.Compiler; using System.Collections.Gener ...

  7. MongoDB C#驱动中Query几个方法 (转)

    Query.All("name", "a", "b");//通过多个元素来匹配数组 Query.And(Query.EQ("nam ...

  8. c#多线程(UI线程,控件显示更新) Invoke和BeginInvoke 区别

    如果只是直接使用子线程访问UI控件,直接看内容三,如果想深入了解从内容一看起. 一.Control.Invoke和BeginInvoke方法的区别 先上总结: Control.Invoke 方法 (D ...

  9. Python学习路程day7

    多态 class Animal: def __init__(self, name): # Constructor of the class self.name = name def talk(self ...

  10. BZOJ 2241 打地鼠

    暴力. 这怎么这么快.... #include<iostream> #include<cstdio> #include<cstring> #include<a ...