Java环境变量配置

在Java 的开发环境的准备中,一般安装完JDK之后会进行Java相关的环境变量的配置, 那么:

  • 需要配置哪些环境变量呢?
  • 为什么要配置这些环境变量呢?

Java 相关的环境变量

  • JAVA_HOME , [新增环境变量], Java所在的目录,也就是JDK的安装目录。 Java 本身不需要, 但是一些软件和Java的工具需要这个变量。设置这个变量对于PATH 的配置更方便
  • PATH ,[修改]。搜索可执行文件。Windows本身的环境变量,%JAVA_HOME%\bin。配置之后在命令行就可以直接执行Java相关的命令了, 否则需要使用全路径执行。
  • CLASSPATH, 类路径。在Java 5及之前的版本需要配置,Java 5之后的版本不需要配置。  指定Java类库文件(如.jar文件)的位置 ,表示JVM从哪找需要运行的类文件,。Java 5 之后默认回到当前路径查找。多个路径使用分号分隔。 比如: .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar

为什么需要配置环境变量

为什么需要将Java 的bin 目录增加到PATH

Java程序保存在以.java为后缀的文件中,这个文件被称为源文件。
源文件不能直接被执行,需要先被编译成二进制字节码文件,即后缀名为.class的文件。这个过程需要用到JDK(Java Development Kit)中提供的编译程序javac
编译完成后,需要运行Java程序。这个过程需要用到JDK中的java命令,它会将.class文件读入到Java虚拟机(JVM)的内存中,然后转换成机器语言并解释执行。

综上,一个Java源文件要运行需要使用到javac 和java 的命令,这些命令位于Java安装目录的bin 目录下, 如果不添加Java bin目录到PATH,则要么到Java bin目录执行命令, 要么使用 java,javac 命令的全路径。

为什么要配置JAVA_HOME

如果只是要找到Java相关的命令,直接将Java 的bin 目录放到PATH 就可以了,为什么要JAVA_HOME呢? 原因有两个:

  1. 支持其他工具,集成开发环境(IDE)和Java Web服务器:某些IDE和Java Web服务器会以JAVA_HOME环境变量的值去寻找JDK的安装路径。配置JAVA_HOME环境变量可以确保这些工具能够正确地找到并使用JDK。还有一些工具比如Maven 等也会使用到JAVA_HOME。
  2. 简化配置:可以使用%JAVA_HOME%来代替JDK的安装路径。这样,当JDK安装路径发生变化时,只需要修改JAVA_HOME环境变量的值即可,而不需要修改PATHCLASSPATH环境变量中的路径。

在这里插入图片描述



本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/484182.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

sizeof和strlen区分,(好多例子)

sizeof算字节大小 带\0 strlen算字符串长度 \0之前

STM32 DMA直接存储器存取原理及DMA转运模板代码

DMA简介: 存储器映像: 注意:FLASH是只读的,DMA不能写入,但是可以读取写到其他存储器里 变量是存在运行内存SRAM里的,常量(const)是放在程序存储器FLASH里的 DMA框图: …

释放超凡性能,打造鸿蒙原生游戏卓越体验

11月26日在华为Mate品牌盛典上,全新Mate70系列及多款全场景新品正式亮相。在游戏领域,HarmonyOS NEXT加持下游戏的性能得到充分释放。HarmonyOS SDK为开发者提供了软硬协同的系统级图形加速解决方案——Graphics Accelerate Kit(图形加速服务…

【专题】计算机网络之运输层(传输层)

1. 运输层协议概述 1.1 进程之间的通信 (1) 运输层的作用 运输层提供进程间的逻辑通信。 运输层的屏蔽作用: 运输层向高层用户屏蔽了下面网络核心的细节(如网络拓扑、所采用的路由选择协议等),使应用进程看见的就是好像在两个运…

四轮阿克曼(前轮转向、后轮驱动)车子仿真控制

目录 写在前面的话调用 libgazebo_ros_ackermann_drive.so 插件属性介绍补充 steering_wheel_joint 配置键盘控制命令 结果演示 写在前面的话 这里增加一个四轮阿克曼(前轮转向、后轮驱动)车子仿真控制的版本,使用的事gazebo的插件 参考资料…

移植NIOS10.1工程,NIOS10.1路径修改

移植NIOS10.1工程,NIOS10.1路径修改 因工程的需要,使用的NIOS10.1,比较老,这个版本的路径是使用的绝对路径,导致移植工程市回报路径的错误,在13.1之后改为了相对路径,不存在这个问题。 需要修…

【ElasticSearch】倒排索引与ik分词器

ElasticSearch,简称ES(后文将直接使用这一简称),是一款卓越的开源分布式搜索引擎。其独特之处在于其近乎实时的数据检索能力,为用户提供了迅速、高效的信息查询体验。 它能够解决全文检索,模糊查询、数据分析等问题。那么它的搜索…

【从零开始的LeetCode-算法】74. 搜索二维矩阵

给你一个满足下述两条属性的 m x n 整数矩阵: 每行中的整数从左到右按非严格递增顺序排列。每行的第一个整数大于前一行的最后一个整数。 给你一个整数 target ,如果 target 在矩阵中,返回 true ;否则,返回 false 。…

基于图像变化检测的毁伤效果评估——学习笔记

前言 闲的无聊,看看论文。 基本评估步骤 第一步:图像预处理。通过图像配准、不同波段提取、图像校正、图像滤波等手段,统一图像格式(文中统一为灰度图),得到待检测图像; 第二步:…

容易被遗忘的测试用例

网络服务器启动了吗?应用程序服务器启动了吗?数据库上线了吗?测试数据是否预先加载到数据库中?每当我们准备开始测试应用程序时,一切都应该已经准备妥当。 然而,当测试开始后,我们可能会漏掉一些…

从excel数据导入到sqlsever遇到的问题

1、格式问题时间格式,excel中将日期列改为日期未生效,改完后,必须手动单击这个单元格才能生效,那不可能一个一个去双击。解决方案如下 2、导入之后表字段格式问题,数据类型的用navicat导入之后默认是nvarchar类型的&a…

【算法】图论——树的重心

目录 题目解析 算法原理 图的存储 算法实现 题目解析 题目解析 给定一颗树,树中包含n个结点(编号)和n-1条无向边。请找到树的重心,并输出将重心删除后,剩余各个连通块中点数的最大值。 什么是重心? 重…

全面UI组件库Telerik 2024 Q4全新发布——官方宣布支持.NET 9

Telerik DevCraft包含一个完整的产品栈来构建您下一个Web、移动和桌面应用程序。它使用HTML和每个.NET平台的UI库,加快开发速度。Telerik DevCraft提供最完整的工具箱,用于构建现代和面向未来的业务应用程序,目前提供UI for ASP.NET MVC、Ken…

数据分析(一): 掌握STDF 掌握金钥匙-码农切入半导体的捷径

中国的半导体行业必然崛起!看清这个大势,就会有很多机会。 今天,我们一起来了解一下半导体行业的一朵金花:STDF。 实际上这只是一种文件格式,但是当你熟练掌握解析这种文件的时候,你就已经打开在这个基础…

【批处理脚本】更改Windows系统中的 hosts 解析文件

概述 作用 修改 Windows 系统中的 hosts 文件,可以实现 插入 或 删除 条目。该脚本允许用户以管理员权限执行,将特定的域名解析到指定的 IP 地址 应用场景 非常适用于需要频繁或批量修改 hosts 文件的场景: 屏蔽网站、域名重定向、DNS 污染防…

【Rust在WASM中实现pdf文件的生成】

Rust在WASM中实现pdf文件的生成 前言概念和依赖问题描述分步实现pdf转Blob生成URL两种方式利用localstorage传递参数处理图片Vec<u8>到pdf格式的Vec<u8>使用rust创建iframe显示pdf的Blob最后 前言 实现了一个通用的前端jpg转pdf的wasm,因为动态响应框架无法直接打…

CanFestival移植到STM32 F4芯片(基于HAL库)

本文讲述如何通过简单操作就可以把CanFestival库移植到STM32 F4芯片上&#xff0c;作为Slave设备。使用启明欣欣的工控板来做实验。 一 硬件连接 观察CAN报文需要专门的设备&#xff0c;本人从某宝上买了一个兼容PCAN的开源小板子&#xff0c;二十几块钱&#xff0c;通过USB接…

Cursor+Devbox AI开发快速入门

1. 前言 今天无意间了解到 Cursor 和 Devbox 两大开发神器,初步尝试以后发现确实能够大幅度提升开发效率,特此想要整理成博客以供大家快速入门. 简单理解 Cursor 就是一款结合AI大模型的代码编辑器,你可以将自己的思路告诉AI,剩下的目录结构的搭建以及项目代码的实现均由AI帮…

Redis常见问题总结

Redis常见问题总结 1.Redis分布式存储方案 分布式存储核心特点主从&#xff08;Master/Slave&#xff09;模式一主多从&#xff0c;故障时手动切换。哨兵&#xff08;Sentinel&#xff09;模式有哨兵的一主多从&#xff0c;主节点故障自动选择新的主节点。集群&#xff08;Cl…

Svn如何切换删除账号

记录Svn清除切换账号 1.首先打开小乌龟的设置如下图 打开设置后单击已保存数据&#xff0c;然后选择清除 接上图选择清除后&#xff0c;就可以打勾选择清除已保存的账号&#xff0c;我们再次检出的就可以切换账号了 &#x1f449;总结 本次记录Svn清除切换账号 如能帮助到你…