当前位置: 首页 > news >正文

JDK 为什么需要配置环境变量

前言

  首先,我们要知道 Java 程序的执行过程。首先将 xxx.java 文件(使用 javac 编译指令)编译成 xxx.class 文件(字节码文件),再将字节码文件(使用 java 执行指令)解释成电脑所能认识的机器指令并运行。

正文

  Java 相关的环境变量:JAVA_HOME/ PATH / CLASSPATH

  • 配置 JAVA_HOME 环境变量 (必需)

  JDK 是我们进行 java 开发必不可少的,在开发过程中我们通常会使用一些 java 开发过程中用到的软件(如 eclipse、tomcat等)是通过 JAVA_HOME 来找到 JDK 的(环境变量 JAVA_HOME 的值就是 JDK 安装的路径),所以我们不配置JAVA_HOME的话那我们使用eclipse时可能要受到影响。

  • 配置 PATH 环境变量 (必需)

  前面讲到了 Java 程序的运行首先需要使用 javac 编译指令,编译成字节码文件,继而使用 java 执行指令解释并运行字节码文件。而 window 运行 java 编译命令 javac 或者执行指令 java 的时候,本地查找不到某个命令或文件,就会到path中去查找。
  那这个 javac 我们知道是存在 JDK 目录下面的 bin 目录中的,因为我们不可能在每个 java 文件所在目录放置 JDK ,故把 JDK 放置 path 环境变量中,这样每个 java 文件都可以通过 path 中设定的jdk目录找到编译命令进行编译。

  • 配置 CLASSPATH 环境变量(非必需):

  在java开发过程中我们会用到很多开发人员已经帮我们写好的标准类库,而我们要用这些类库的话必须告诉计算机如何找到它们,CLASSPATH环境变量的作用就是指定类搜索路径,JVM就是通过CLASSPTH来寻找类的,设置CLASSPATH环境变量即可使计算机找到它们。

  为什么非必须配置CLASSPATH环境变量呢?

  • 答案请看我上一篇文章: Win11 搭建 Java 开发环境(JDK)
http://www.lryc.cn/news/389573.html

相关文章:

  • ViewBinding的使用(因为kotlin-android-extensions插件的淘汰)
  • IOS Swift 从入门到精通:ios 连接数据库 安装 Firebase 和 Firestore
  • QT4-QT5(6)-const char* QString 乱码转换
  • 报错:RuntimeError_ cuDNN error_ CUDNN_STATUS_EXECUTION_FAILED
  • 黑马点评项目总结1-使用Session发送验证码和登录login和 使用Redis存储验证码和Redis的token登录
  • 【大模型】Vllm基础学习
  • 使用vue动态给同一个a标签添加内容 并给a标签设置hover,悬浮文字变色,结果鼠标悬浮有的字上面不变色
  • 【ajax实战06】进行文章发布
  • Codeforces Round 954 (Div. 3)(A~E)
  • 基于Java微信小程序同城家政服务系统设计和实现(源码+LW+调试文档+讲解等)
  • [21] Opencv_CUDA应用之使用Haar级联的对象检测
  • CXL:拯救NVMe SSD缓存不足设计难题-2
  • Opencv学习项目6——pyzbar
  • Switch 刷安卓11 (LineageOS 18.1) 大气层双系统图文教程
  • Spring Boot与Spring Batch的深度集成
  • RTSP协议在视频监控系统中的典型应用、以及视频监控设备的rtsp地址格式介绍
  • Kotlin基础——异步和并发
  • 消防认证-防火卷帘
  • SpringBoot3.3集成knif4j-swagger文档方式和使用案例
  • 老年服务与管理实训室:制定教学模式
  • 4、DDD、中台和微服务的关系
  • 【ACM出版,马来西亚-吉隆坡举行】第四届互联网技术与教育信息化国际会议 (ITEI 2024)
  • 走进IT的世界
  • Linux 时区文件编译器 zic【man 8 zic】
  • Springboot下使用Redis管道(pipeline)进行批量操作
  • Vue技巧大揭秘:自定义指令的力量与应用
  • HR人才测评,如何考察想象力?
  • Git命令远程分支的合并和本地分支的同步
  • 墨烯的C语言技术栈-C语言基础-003
  • RpcRrovider分发rpc服务(OnMessage和Closure回调)