环境变量path和classpath

path环境变量

当我们用文本编辑器写好了Java代码并保存为.java文件后,用dos命令窗口的javac xxx.java命令去编译文件时,会出现’javac’不是内部或外部命令,也不是可运行的程序或批处理文件。

这说明:windows操作系统没有发现“javac.exe”命令在哪里,没有找到javac.exe文件在哪。
为什么ipconfig… ping等命令可以使用呢?为什么javac用不了?
我们发现windows操作系统中有这样一一个环境变量path,它的值为:

C:\Program Files\Microsoft MPI\Bin;C:\Program Files\NVIDIA Corporation\NVIDIA NvDLISR;C:\Program Files\dotnet;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0;%SYSTEMROOT%\System32\OpenSSH;C:\Program Files\Microsoft SQL Server\Client SDK\ODBC\170\Tools\Binn;C:\Program Files (x86)\Microsoft SQL Server\150\Tools\Binn;C:\Program Files\Microsoft SQL Server\150\Tools\Binn;C:\Program Files\Microsoft SQL Server\150\DTS\Binn;C:\Users\Taylor George\AppData\Local\Google\Chrome\Application\chromedriver;C:\Users\Taylor George\AppData\Local\Programs\Python\Python37;D:\mysql\bin;

我们可以发现在C:\windows\System32这个目录下存在:ipconfig.exe
配置环境变量path的步骤:
文件资源管理器–>此电脑–>属性–>高级系统设置–>环境变量–>找到path,将javac所在路径添加进去(用英文分号分隔)
path环境变量属于windows操作系统,不隶属于Java
注意:环境变量包括“系统变量”和“用户变量”
系统变量:范围比较大,系统变量会让计算机所有用户都起作用。
用户变量:范围比较小,这个变量只是作用于当前用户。

classpath环境变量

首先,我们来看一看:“java HelloWorld”的执行过程以及原理:
第一步:会先启动JVM(java虚拟机)
第二步: JVM启动之 后,JM会去启动"类加载器classloader"
类加载器的作用:加载类的。本质.上类加载器负贲去硬盘_上找类"对应的字节码"文件假设是"java HelloWorld",那么类加载器会去硬盘上搜索: HelloWorld. class文件。
假设是"java Test", 那么类加载器会去硬盘_上搜索: Test.class文件 。
第三步:
类加载器如果在硬盘_上找不到对应的字节码文件,会报错,报什么错?
错误:找不到或无法加载主类
类加载器如果在硬盘.上找到了对应的字节码文件,类加载器会将该字节码
文件装载到JVM当中,JVM启动"解释器"将字节码解释为"101010000…"这种
二进制码,操作系统执行二进制码和硬件交互。

那么问题来了,默认情况下类加载器去哪里寻找“字节码文件”?默认情况下类加载器会在当前目录下寻找“字节码文件”。

那么能不能给类加载器制定一个路径,让类加载器去指定的路径下加载字节码文件。
答案:可以的。但是需要设置一个环境变量,叫做:classpath。
classpath环境变量不是于Windows操作系统,classpath环境变量隶属于Java
classpath环境变量是Java特有的。
classpath配置过程:
文件资源管理器–>此电脑–>属性–>高级系统设置–>环境变量–>新建classpath(不能改动,大小写随意),编辑想要的配置的路径。
配置完成记得重启cmd。
classpath的一个重要特点:配置了以后,类加载器只会去该配置路径下寻找“字节码文件”, 不在从当前路径下寻找。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值