JAVA为什么要配置环境变量?如何配置环境变量?

        做了九个多月的程序员,记得当初才接触java时,很困惑为什么要去配置环境变量,但当时自己并没有去解决,只是百度跟着做,也没有去理解原因;现在打算从头梳理一遍基础,从头开始给自己查缺补漏,然后用最简洁精炼的话语写下自己的一些想法或者笔记,加强自己的学习。

        言归正传,我们刚开始学习java的时候,都知道要去下载java程序员的开发工具包,也就是jdk,其中包含了java的运行环境和一些java工具。第一个java程序就是HelloWorld,我们写好了HelloWorld.java文件后,在DOS命令窗口,通过javac去编译HelloWorld.java的源文件,使其生成HelloWorld.class的字节码文件,再通过java去运行HelloWorld.class。这个过程中,我们使用了javac和java两个命令,期间如果我们没有配置java环境变量,那么我们执行javac或者java命令时便会出现:’javac‘不是内部或外部命令,也不是可运行的程序,

我们都知道windows有自带的命令就是:ipconfig

那为什么ipconfig可以在任何目录下运行,而javac或者java不行呢?这时我们打开"环境变量" (以Windows10举例)

此电脑右键,选择“属性”

 选择“高级系统设置”

 然后选择“环境变量”

 打开后,我们可以看见在变量“path”的路径后面跟着一个值“C:\Windows\System32;”

 我们去电脑里找到该目录,在该目录下,我们便可以找到ipconfig指令

那我们是不是可以理解,我们在环境变量中设置了“path”的值为“C:\Windows\System32”,所以我们在DOS命令窗口敲下指令ipconfig时,Windows操作系统才能正确的识别该指令呢?当我们把“path”里的该值给删除或者修改为一个无效值后 (这里我把它修改为无效文件夹system321)

 此时我们重新去DOS命令窗口敲下ipconfig指令

同样的问题也出现在了ipconfig的指令上。那么显而易见,答案呼之欲出,正是因为我们在环境变量里面告诉了Windows操作系统该指令应该去哪个目录下去寻找,所以才能在DOS命令窗口中执行该指令。

        那么我们是不是把javac和java指令所在的目录告诉Windows操作系统,那么这两个指令就可以在DOS命令窗口里面执行了;这时打开我们之前下载好的jdk,在jdk的bin目录下可以找到javac和java两个指令(图片以jdk17为例)

 你可以尝试,在该目录下去javac编译你的java文件,java去运行你的class文件是不需要配置环境变量也可以成功的。

同样的我们把该路径加入“path”值里面,去告诉Windows操作系统去该路径下寻找指令(如下图)

 

 那我们便可以在DOS命令窗口中编译运行java程序了,以上就是配置java环境变量的原因及简略的操作。

顺便我们平时在看配置环境变量的时候会经常看到JAVA_HOME,和classpath这里个环境变量一起要求配置,

首先JAVA_HOME就行一个昵称一样,如图

 

当你把你jdk的路径给他命名为JAVA_HOME时,在填写“path”时就可以这样填写

 

classpath是去告诉java指令,去寻找HelloWorld.class文件时,从哪里开始找。你不配置的时候,默认是从当前目录下去找寻,也可以 赋值  “.;” , “.”是告诉ClassLoader从当前目录下寻找,“;”是一个隔离符。

 第一次写博客,写的不好的话请见谅,也可以提出意见,毕竟目标是为了相互学习,相互进步

  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值