Java 环境变量的设置及其目的

文章目录

  • 1. **为什么要设置Java环境变量?**
  • 2. **设置Java环境变量的步骤(Windows举例)**
  • 3. **设置环境变量的目的**
    • 3.1 原理
      • 1. **PATH 环境变量的作用**
      • 2. **JDK 的 bin 目录**
      • 3. **执行流程**
      • 4. **示例(Linux)**
  • 总结


1. 为什么要设置Java环境变量?

Java开发环境需要通过环境变量来指定JDK(Java Development Kit)的位置和工具。这使得操作系统能够找到编译和运行Java程序所需的文件和工具。主要有两个重要的环境变量:

  • JAVA_HOME:指向JDK的安装目录,用于Java开发相关的工具(如编译器 javac)的路径。
  • PATH:确保系统可以在任意路径下调用Java的命令(如 java, javac 等)而无需每次手动提供完整路径。

2. 设置Java环境变量的步骤(Windows举例)

  • 步骤 1:下载并安装JDK
    先从Oracle官网下载安装最新的JDK。

  • 步骤 2:找到JDK的安装路径
    通常,安装在 C:\Program Files\Java\jdk<version> 路径下。

  • 步骤 3:设置 JAVA_HOME

    • 打开 “系统属性” > “高级系统设置” > “环境变量”。
    • 在系统变量区域,点击 “新建”。
    • 在变量名输入框中填入 JAVA_HOME,在变量值中填入JDK的安装路径。
  • 步骤 4:更新 PATH

    • 同样在系统变量区域,找到 Path 变量,点击 “编辑”。
    • 添加新条目,输入 %JAVA_HOME%\bin,这样系统就知道在哪里查找Java工具。
  • 效果如图
    在这里插入图片描述

在这里插入图片描述

3. 设置环境变量的目的

  • 方便开发和执行Java程序:通过在 PATH 中设置 JDK 的 bin 目录,操作系统可以在任何地方识别 javajavac 等命令,而不需要每次输入完整的路径。
  • 支持Java相关的工具和框架:许多构建工具(如 Maven、Gradle)和IDE(如 Eclipse、IntelliJ IDEA)都会依赖 JAVA_HOME 来查找Java开发工具。

3.1 原理

当我们将 JDK 的 bin 目录添加到系统的 PATH 环境变量中后,操作系统能够识别并执行 javajavac 等命令的原因主要如下:

1. PATH 环境变量的作用

PATH 是操作系统中一个非常重要的环境变量,作用是告诉系统去哪里寻找可执行文件。当我们在命令行输入一个命令时,操作系统会按照 PATH 中指定的路径逐一查找,看是否能找到该命令对应的可执行文件。如果找到,就会执行这个命令。如果找不到,系统会返回 “未找到命令” 的错误。

2. JDK 的 bin 目录

JDK 的 bin 目录包含了所有与 Java 开发相关的工具和命令的可执行文件,比如:

  • java:用于运行 Java 应用程序的命令。
  • javac:Java 编译器,用于编译 .java 文件成字节码文件 .class
  • javadoc:生成 Java 文档的工具。

这些可执行文件都位于 JDK 安装目录下的 bin 文件夹中。当我们把这个 bin 路径添加到 PATH 中后,操作系统会在每次执行命令时,在 PATH 列出的所有目录中查找对应的可执行文件。

3. 执行流程

  • 添加 bin 目录前:如果我们尝试在命令行输入 javajavac,系统不知道该去哪里寻找这些命令的可执行文件,因此会提示 “command not found”。
  • 添加 bin 目录后:当我们在命令行输入 javajavac,操作系统会从 PATH 中的各个目录逐一查找这些可执行文件。如果找到了,就会执行该命令。

4. 示例(Linux)

在 Linux 或 macOS 中,通常通过编辑 .bashrc.zshrc 文件来设置环境变量:

export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
export PATH=$JAVA_HOME/bin:$PATH

然后执行 source ~/.bashrcsource ~/.zshrc 以使更改生效。

总结

通过设置 JAVA_HOMEPATH,你可以使系统和工具方便地找到JDK,确保在开发和运行Java程序时不需要手动指定路径,从而提高开发效率。

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

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

『网络游戏』GoLand服务器框架【01】

打开GoLand创建项目 编写Go程序&#xff1a;main.go package mainimport ("fmt""newgame/game/gate""os""os/signal""syscall""time" )var (SinChan make(chan os.Signal, 1)closeChan chan struct{} )func ma…

【PyTorch入门】一文解释 PyTorch的求导 (backward、autograd.grad)

&#x1f308; 个人主页&#xff1a;十二月的猫-CSDN博客 &#x1f525; 系列专栏&#xff1a; &#x1f3c0;PyTorch入门宝典_十二月的猫的博客-CSDN博客 &#x1f4aa;&#x1f3fb; 十二月的寒冬阻挡不了春天的脚步&#xff0c;十二点的黑夜遮蔽不住黎明的曙光 目录 1. 动…

攻防世界---->happyctf

做题笔记。 下载 查壳。 32ida打开。 先运行一下&#xff1a; C写的。 追踪 good job 具体跟踪分析&#xff1a; 说白了&#xff0c;就是一个用于判断 flag key的。 往上走&#xff1a; 跟进。 打开 od吧。 锁定地址 追踪看看。&#xff08;此题&#xff0c;ida不能动态 od可以…

yolov5源码分析001

文章目录 1.研究背景2.源码位置3.源码 1.研究背景 最近项目需要将前人做的YOLOv5改造项目继续改造,于是研究其代码,一步步剖析,一步步看一个个代码意义,旨在为后期攻克YOLOv10等系列做好准备. 2.源码位置 3.源码 # 下载指定文件,并保存在指定目录文件夹中,最后返回文件完整路…

Win10系统插入带有麦克风的耳机_麦克风不起作用_解决方法_亲测成功---Windows运维工作笔记054

今天我在使用讯飞输入法的时候,想通过讯飞的语音输入法来提高自己的输入效率。 但是这个时候发现一个问题就是我插入我的台式机的是一个带有麦克风的耳机。 但是发现我这个耳机没有办法被电脑识别出麦克风来,所以说就没办法使用讯飞输入法的语音输入功能来直接输入文字了。…

Linux虚拟机安装教程

一、前期准备 1.下载VMware Workstation 官网地址&#xff1a;https://access.broadcom.com 进入后需使用邮箱注册登录&#xff0c;登陆后会进入到控制台&#xff0c;选择My Downloads 下滑找到VMware Workstation Pro 选择免费版 选择需要的版本&#xff0c;我下载的是17.5…

Java实现找色和找图功能

某天&#xff0c;张三接到一个任务需求&#xff0c;将一个Excel表格里面的员工信息&#xff0c;录入到员工系统里面&#xff0c;由于数据量非常大&#xff0c;操作起来巨慢。经过一段时间的操作和观察&#xff0c;他发现这种操作&#xff0c;非常有规律&#xff0c;基本就是一些…

SpringBoot3.X配置OAuth

背景 之前在学习OAuth2时&#xff0c;我就有一个疑惑&#xff0c;OAuth2中有太多的配置、服务类都标注了Deprecated&#xff0c;如下&#xff1a; 显然这些写法已经过时了&#xff0c;那么官方推荐的最新写法是什么样的呢&#xff1f;当时我没有深究这些&#xff0c;我以为我放…

[大语言模型-论文精读] 词性对抗性攻击:文本到图像生成的实证研究

[大语言模型-论文精读] 词性对抗性攻击&#xff1a;文本到图像生成的实证研究 目录 文章目录 [大语言模型-论文精读] 词性对抗性攻击&#xff1a;文本到图像生成的实证研究目录文章研究背景 文章标题摘要1 引言2 相关工作3 数据集创建3.1 数据收集3.2 目标提示生成3.3 数据集注…

从日志到洞察:轻松实现服务器安全管理的神器

在当今复杂多变的网络环境中&#xff0c;服务器安全管理已成为一项不可或缺的任务。然而&#xff0c;面对海量的日志数据&#xff0c;如何快速精准地提取有价值的信息&#xff0c;并及时发现潜在的安全威胁&#xff1f;本文将为您介绍一款强大的服务器日志检索与查杀工具&#…

【AHK】打造炒股利器系列——用数组和循环来简化语音报时器

上一篇文章&#xff0c;【AHK】打造炒股利器系列——语音报时器 作为AHK入门&#xff0c;讲解了 注释、赋值、if语句、逻辑运算符、定时器等基本知识。本篇将引入Array和Loop语句来简化化这个语音报时器&#xff0c;让代码更优雅&#xff0c;代码越简单越不容易出错误&#xff…

07-阿里云镜像仓库

07-阿里云镜像仓库 注册阿里云 先注册一个阿里云账号&#xff1a;https://www.aliyun.com/ 进入容器镜像服务控制台 工作台》容器》容器服务》容器镜像服务 实例列表》个人实例 仓库管理》镜像仓库》命名空间》创建命名空间 仓库管理》镜像仓库》镜像仓库》创建镜像仓库 使…

Spring Boot技术栈:打造高效在线商城

2 相关技术 2.1 Springboot框架介绍 Spring Boot是由Pivotal团队提供的全新框架&#xff0c;其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置&#xff0c;从而使开发人员不再需要定义样板化的配置。通过这种方式&#xff0c;Spring…

异步框架 fastapi -- 简单介绍

文章目录 fastapi 介绍restful接口设计简单应用Swagger风格的接口文档 fastapi 介绍 fastapi官方文档 fastapi 是现代化、高性能、基于python标准类型注释的异步web框架&#xff1b;基于python构建web APIs&#xff0c;性能可比go语言&#xff1b;高效编码&#xff0c;更少的…

Word导出样式模板,应用到其他所有word

一&#xff0c;打开自己定义好的模板word文件&#xff0c;要用docx格式 打开自己自定义好各种样式的模板的docx文件。 二&#xff0c; 另存为 -》 选一个位置 三&#xff0c;保存为dotm格式 名字要改为Normal 保存类型要用dotm格式。 四&#xff0c;去找word默认加载的…

OpenAI o1与GPT-4o究竟强在哪里

OpenAI 的 O1 模型与 GPT-4o 相比&#xff0c;具有显著的技术进步和性能提升。以下是两者的主要区别和 O1 的进步之处&#xff1a; 推理能力&#xff1a;O1 模型在处理复杂问题&#xff08;如编程和数学&#xff09;方面表现出更强的推理能力。例如&#xff0c;在国际数学奥林匹…

大模型微调方法(非常详细),收藏这一篇就够了!

引言 众所周知&#xff0c;大语言模型(LLM)正在飞速发展&#xff0c;各行业都有了自己的大模型。其中&#xff0c;大模型微调技术在此过程中起到了非常关键的作用&#xff0c;它提升了模型的生成效率和适应性&#xff0c;使其能够在多样化的应用场景中发挥更大的价值。 那么&…

如果只能保留一个复制粘贴软件,那一定是它pastemate

下载地址&#xff1a;Pastemate 在日常的工作和生活中&#xff0c;使用电脑必离不开的功能中&#xff0c;一定有复制粘贴。传统的复制粘贴方式效率不那么高&#xff0c;Windows内置的剪切板功能感觉又差那么些意思。 &#x1f9d0;对于功能和颜值都有要求的你&#xff0c;一定…

大模型推理任务Nvidia GPU选型指南

大型语言模型 (LLM)&#xff08;如 GPT-4、BERT 和其他基于 Transformer 的模型&#xff09;彻底改变了 AI 格局。这些模型需要大量计算资源来进行训练和推理。选择合适的 GPU 进行 LLM 推理可以极大地影响性能、成本效益和可扩展性。 在本文中&#xff0c;我们将探索最适合 L…

你们猜!吊打Oracle的国产数据库有哪几家?

今天闲暇之余看到某vx群聊得很火热&#xff0c;这个群聚集了国内不少数据库大咖&#xff0c;其中大家聊到国产数据库遥遥领先了。 最开始主要是一个朋友提到目前很多企业拍板的人并不懂数据库&#xff0c;甚至很多知名数据库都没听过。 然后大家就开始聊到国产数据库了&#xf…