为何要配置环境变量?

为何要配置环境变量?一、前言 干了这么多年Java,配置环境变量都是第一步要做的,但是为什么要配置环境变量呢,又有什么用呢,今天哪吒就带你一探究竟。 二、百度百科 有事没事找百度,百度解释名词这一块做的是真的好。 1、环

一、前言

干了这么多年Java,配置环境变量都是第一步要做的,但是为什么要配置环境变量呢,又有什么用呢,今天哪吒就带你一探究竟。

二、百度百科

有事没事找百度,百度解释名词这一块做的是真的好。

1、环境变量简介

环境变量一般是指在操作系统中用来指定操作系统运行环境的一些参数,如临时文件夹位置和系统文件夹位置等。

环境变量是在操作系统中一个具有特定名字的对象,它包含了一个或者多个应用程序所将使用到的信息。例如Windows和DOS操作系统中的path环境变量,当要求系统运行一个程序而没有告诉它程序所在的完整路径时,系统除了在当前目录下面寻找此程序外,还应到path中指定的路径去找。用户通过设置环境变量,来更好的运行进程。

2、环境变量的主要作用

(1)设置参数

path环境变量的作用就是告诉系统,当要求系统运行一个程序而没有告诉它程序所在的完整路径时,系统除了在当前目录下面寻找此程序外,还应到哪些目录下去寻找。而我们通常情况下配置的path变量,就是这个目录的完整路径。

简而言之,就是运行某个命令需要某些参数时,如果当前目录下找不到,则自动去环境变量中寻找。

(2)软件共用

很多朋友会在自己的计算机上安装双系统,例如C盘安装Windows XP,D盘安装Windows 7。可是某些软件往往只在Windows XP系统中安装,Windows 7系统中是无法正常使用的,比较麻烦却有效的方法是再安装一遍。当我们了解了环境变量中的用途后就可以很好解决双系统的软件共用问题。

(3)系统运行

为什么在Windows XP中安装了的软件在Windows 7下无法运行呢(绿色软件除外)?原因是安装软件时往往须要向系统目录中复制某些文件,而使用另外一个系统时会由于缺少这些文件而无法运行。因此,我们可以通过设置环境变量的方法来解决这个问题。

三、Java环境变量

1、Java jdk(Java Development kit)的构成

JDK是 Java语言的软件开发工具包,主要用于移动设备、嵌入式设备上的java应用程序。JDK是整个java开发的核心,它包含了JAVA的运行环境(JVM+Java系统类库)和JAVA工具。

Java运行环境(Java runtime environment,JRE)就是由Java虚拟机(Java virtual machine,JVM)以及一些标准函数库组成。

所以在这里,我们就知道了JDK,JRE,JVM之间的关系了。

jdk.png 接下来我们看看安装后jdk的目录。

2.png 这里bin目录就是Java的可执行文件,包括我们常会用到的java,javac,javadoc开发指令,我们程序的编译执行使用到的指令程序都是在这个目录下的。

3.png

2、运行javac

因为配置了环境变量的缘故,如果cmd当前路径下没有找到,则会去环境变量path中去找,如果有运行,如果没有则报错。

4.png 已配置的Java环境变量:

5.png

6.png

3、如果不配置环境变量,那么javac命令在bin目录下能运行吗?在其它任意路径下能运行吗?

试一下,简单一点,更改java_home的路径

7.png javac命令在bin目录下能运行吗?

8.png 在其它任意路径下能运行吗?

9.png

4、那么为什么jdk的路径不能直接配置在path中,而是单独配置一个JAVA_HOME呢?

因为这是Java开发过程中一个约定俗成的东西,因为Java在最开始使用的时候,是需要搭建和使用tomcat服务器的,现在也是需要的,只不过springboot集成了tomcat,不需要单独启动而已。

在tomcat中设置的变量就是JAVA_HOME,是通过这个变量去访问jdk的,因为每个人安装jdk的路径是不尽相同的,所以想要调用,只能通过变量赋值的方式提前配置好,约定大于配置,我相信都通过这句话,应该就是这个道理吧。

10.png

大家[点赞、收藏、关注、评论]啦 、感兴趣的可以找我送给你

今天的文章为何要配置环境变量?分享到此就结束了,感谢您的阅读。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/18103.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注