我们刚开始学习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. City Skyline

    题目大意:(poj 3044) 给出城市的正视图,所有的大楼都是矩形,给出正视图每个高度改变时的坐标,问最少有多少大楼.一共N个矩形,N<=50000 解题过程: 首先可以把问题转化一下:有N块 ...

  2. 在JavaScript 自定义对象来模拟Java中的Map

    直接看代码: //模拟一个Map对象 function Map(){ //声明一个容器 var container={}; //定义一个put方法,向容器中存值 this.put=function(k ...

  3. 踏着前人的脚印学hadoop——ipc中的Server

    1.An abstract IPC service.  IPC calls take a single {@link Writable} as a parameter, and return a {@ ...

  4. hashmap and hashtable

    ①继承不同. public class Hashtable extends Dictionary implements Map public class HashMap extends Abstrac ...

  5. Unity4.3.3激活

    Unity4.X Win版本的破解方法: <ignore_js_op> 1.安装unity4.X,一路按提示下一步,要断网,直到激活运行软件后再联网2.将Unity 4.x Pro Pat ...

  6. Windows Azure上搭建SSTP VPN

    一.服务器设置 首先,从0开始,你需要创建一个新的VM.我选择Windows Server 2012 R2,所有步骤和创建普通VM都一样,但最后在防火墙设置里一定要打开TCP 443端口: 创建完成后 ...

  7. C# WebRequestExtensions

    https://gist.github.com/abombss/2720757 public static class WebRequestExtensions { public static Htt ...

  8. hql抓取要注意的点

    fetchtype是lazy,那就用到了在通过缓存中的关联去取,用不到不取:lazy遇到joinfetch就失去意义,但是由于hql语句是自己编写的,可以控制加不加fetch 所以如果主力是hql语句 ...

  9. C++使用POST方法向网页提交数据-----C++发送HTTP数据获取Google天气预报

    例1:C++使用POST方法向网页提交数据    转自:http://www.it165.net/pro/html/201208/3534.html 在C++中可以使用POST方法向网页中提交数据,这 ...

  10. 团队开发——冲刺1.a

    冲刺阶段一(第一天) 1.今天准备做什么? 在了解C#的基础上,深入熟悉Windows窗体应用程序,熟练掌握基本功能. 2.明天做什么:简单设计界面.