CLASSPATH环境变量作用是指定类搜索路径,要使用已经编写好的类,前提当然是能够找到它们,JVM就是通过CLASSPTH来寻找类的。
举例说明:目录D:\Tomcat 9.0\webapps\mytest编写一个类JarTest

对JarTest进行编译,会报如下错误
D:\Tomcat 9.0\webapps\mytest>javac JarTest.java
JarTest.java:3: 错误: 程序包javax.servlet不存在
import javax.servlet.*;
^
JarTest.java:4: 错误: 找不到符号
public class JarTest extends HttpServlet {
^
符号: 类 HttpServlet
JarTest.java:6: 错误: 找不到符号
public void doGet(HttpServletRequest request,
^
符号: 类 HttpServletRequest
位置: 类 JarTest
JarTest.java:7: 错误: 找不到符号
HttpServletResponse response)
^
符号: 类 HttpServletResponse
位置: 类 JarTest
JarTest.java:8: 错误: 找不到符号
throws IOException, ServletException
^
符号: 类 ServletException
位置: 类 JarTest
JarTest.java:24: 错误: 找不到符号
public void init(ServletConfig servletconfig) throws ServletException {
^
符号: 类 ServletConfig
位置: 类 JarTest
JarTest.java:24: 错误: 找不到符号
public void init(ServletConfig servletconfig) throws ServletException {
^
符号: 类 ServletException
位置: 类 JarTest
JarTest.java:5: 错误: 方法不会覆盖或实现超类型的方法
@Override
^
JarTest.java:25: 错误: 找不到符号
super.init(servletconfig);
^
符号: 变量 super
位置: 类 JarTest
9 个错误

因为编译这个类,JVM需要用到servlet-api.jar这个jar包里的类,而JVM找不到它,所以会报错,我们把这个jar包配置在CLASSPATH环境变量中,这样JVM就可以找到。(注意更改过环境变量,要重启CMD命令窗口,CLASSPATH环境变量中 .;表示当前路径,把它放在最前面,表示优先在当前路径搜索需要的类,如果不写,系统会默认在所有CLASSPATH路径搜索后都没找到需要的类,再在当前路径搜索)

再次用cmd命令对JarTest进行编译

编译成功,在目录D:\Tomcat 9.0\webapps\mytest下出现JarTest.class文件

再举个例子
在目录D:\Tomcat 9.0\webapps\mytest\b下编写一个类A
public class A {
public A() {
}
public static void main(String[] args) {
System.out.println(“阶乘:a”);
System.out.println(args.length);
}
}
并把它变成成类文件A.class
要调用这个类文件,只能在其所在目录下

而配置了环境变量后,可以在任意位置调用A.class

CLASSPATH环境变量作用相关推荐

  1. 环境变量中classpath环境变量作用详解

    1.Java程序在运行时,首先会启动JVM(Java虚拟机),然后JVM会去启动"类加载器classloader"负责去硬盘上找"类"对应的"字节码& ...

  2. classpath环境变量

    classpath环境变量 在 此电脑----属性----高级系统设置----环境变量 或许可以找到环境变量(系统有这个环境变量,只是有可能没有显式地配置) 比如我新装的虚拟机中: 找了一下系统环境变 ...

  3. Java配置JAVA_HOME,Path,CLASSPATH环境变量配置

    右键单击此电脑➜属性➜高级系统设置➜环境变量➜ ↑   下面每一步以此图(图一)为基础 ------------------------------------------ 第一步:配置  JAVA_ ...

  4. linux中的环境变量作用

    告诉机器,你输入的命令到哪里去执行.指定命令执行的路径. shell必须搜索系统来找到对应的程序. PATH环境变量定义了用于进行命令和程序查找的目录. Linux是一个多用户多任务的操作系统,可以在 ...

  5. classpath环境变量配置

    1.在了解CLASSPATH变量之前,我们要先设置JAVA_HOME和path这两个环境变量,让JAVA环境可以成功地运行起来,然后,再开始我们的想法. 因此CLASSPATH是在这两环境变量是已经配 ...

  6. 为什么jdk的CLASSPATH环境变量需要设置rt.jar 和 tools.jar

    How Classes are Found 中有说明:(java启动类文件在 rt.jar中, 而 工具类文件在 tools.jar 中)  How the Java Launcher Finds C ...

  7. Java虚拟机如何设置环境变量_如果classpath环境变量没有进行设置,Java虚拟机会自动将其设置为“.”,也就是当前目录。...

    下列插花构图原则中,境变机体现布局关系的原则是----. 量没录所有的氨基酸都有两个以上的密码子. 有进也tRNA和氨基酸结合是氨基酸活化过程. 密码子的第一个碱基要求严格,行设虚拟所以和反密码子识别 ...

  8. 配置JDK环境变量配置及path和classpath的作用

    1.环境变量配置 用鼠标右击"我的电脑"->属性->高级->环境变量 JAVA_HOME :D:\Program Files\Java\jdk1.6.0_12(J ...

  9. classpath、path、JAVA_HOME的作用及JAVA环境变量配置

    CLASSPATH是什么?它的作用是什么? 它是javac编译器的一个环境变量.它的作用与import.package关键字有关.当你写下improt java.util.*时,编译器面对import ...

最新文章

  1. systemstap 脚本 内核开发必备技能 基础讲解 (一)
  2. Android Display buffer_handle_t的定义
  3. AB1601低功耗之IIC和PWM控制注意事项
  4. NYOJ 84 阶乘的0
  5. 使用OData服务创建SAP C4C的Lead数据,必须指定Account字段
  6. Alibaba Druid未授权访问漏洞记录(敏感目录,端口:不确定)
  7. Python实现过段时间计算机自动锁屏小程序
  8. Opera 设置微软雅黑字体显示!
  9. WEB架构师成长之路 二
  10. 恒生电子:O45好在哪儿(深度)| 国君计算机李沐华
  11. python读取sas数据集_Python 数据处理库 pandas 入门教程基本操作
  12. 超详细大学生申请软件著作权登记模板及教程
  13. ensp动态路由ospf配置
  14. 飞机订票系统- c语言课程设,C语言课程设计飞机订票系统设计
  15. ICLR 2019 Oral 论文 BigGAN 解读及源代码拆解
  16. u盘文件名乱码linux,U盘文件名乱码的原因和解决办法
  17. Code Review : Review Board + Svn
  18. pandownload使用
  19. 【Plant Cell Physiol】R2R3-MYB调节因子FhPAP1在香雪兰花青素生物合成中的作用
  20. 字母组合 Golang

热门文章

  1. 【2018的第一封邀请函】开源大数据引擎用户大会
  2. Cherry邀我做善事
  3. 阿姆斯特丹大学计算机专业,荷兰大学计算机专业大学推荐
  4. 这家公司只有 1 个人,年赚一个亿
  5. 大家都在刷的抖音短视频,原来是这些.......
  6. 横岗无线充android,MT5723、MT5725 10W-15W-30W 无线充接收发射一体芯片,支持反向充电...
  7. android 无线充电架构,大神发现Android 11隐藏新功能:反向无线充电放心了
  8. 亲测简单易懂可用:阿里云OSS入门实战2(集成到SpringBoot项目中存放用户头像)
  9. MiUI特色功能设置总结
  10. (附源码)计算机毕业设计ssm花店订花管理系统