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

Mac安装jdk教程

在Mac上安装JDK(Java Development Kit)的步骤如下:

一、下载JDK安装包

  1. 访问Oracle官网

    • 打开浏览器,访问Oracle JDK下载页面。
  2. 选择JDK版本

    • 根据你的开发需求选择合适的JDK版本。例如,JDK 11、JDK 17或JDK 22等。
    • 注意选择与你的Mac芯片类型(Intel或Apple Silicon)相匹配的JDK版本。例如,如果你的Mac是M系列芯片,应选择Arm 64版本;如果是Intel芯片,选择x64版本。
  3. 下载安装包

    • 点击下载链接,同意Oracle的许可协议(如果需要)。
    • 下载完成后,你将得到一个.dmg格式的安装包文件。

二、安装JDK

  1. 打开安装包

    • 双击下载的.dmg文件,这将打开一个新的Finder窗口,显示JDK的安装程序。
  2. 运行安装程序

    • 在Finder窗口中,找到并点击.pkg文件,这将启动JDK的安装向导。
  3. 完成安装

    • 按照安装向导的提示,点击“继续”按钮。
    • 阅读并同意许可协议。
    • 选择安装目标位置(通常是默认位置)。
    • 点击“安装”按钮,等待安装完成。
    • 安装完成后,点击“关闭”按钮退出安装向导。

三、验证安装

  1. 打开终端

    • 你可以通过Spotlight搜索(按下Command + 空格键,然后输入“终端”并回车)快速找到并打开终端应用程序。
  2. 检查JDK版本

    • 在终端中输入以下命令,然后按下回车键:

      java -version
    • 如果JDK安装成功,你将看到类似以下的输出,显示JDK的版本信息:

      openjdk version "11.0.xx" 202x-xx-xx
      OpenJDK Runtime Environment AdoptOpenJDK (build 11.0.xx+xx)
      OpenJDK 64-Bit Server VM AdoptOpenJDK (build 11.0.xx+xx, mixed mode)

四、配置环境变量(可选)

  1. 查看JDK安装路径

    • 如果你需要手动配置环境变量,首先需要知道JDK的安装路径。可以在终端中输入以下命令查看:

      /usr/libexec/java_home -V
    • 这将列出所有已安装的JDK版本及其安装路径。

  2. 编辑配置文件

    • 根据你的Shell类型(通常是bashzsh),编辑相应的配置文件。

      • 对于bash,编辑~/.bash_profile文件。
      • 对于zsh,编辑~/.zshrc文件。
    • 打开终端,输入以下命令之一来编辑配置文件:

      vim ~/.bash_profile   # 如果使用bash
      vim ~/.zshrc          # 如果使用zsh
    • 或者,你也可以使用其他文本编辑器,如nanoopen -e命令。

  3. 添加环境变量

    • 在配置文件的末尾添加以下行,将[JDK_HOME]替换为你的JDK安装路径:

      export JAVA_HOME=/Library/Java/JavaVirtualMachines/[JDK_HOME]/Contents/Home
      export PATH=$JAVA_HOME/bin:$PATH
    • 例如,如果你的JDK安装路径是/Library/Java/JavaVirtualMachines/jdk-11.0.2.jdk/Contents/Home,则添加:

      export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-11.0.2.jdk/Contents/Home
      export PATH=$JAVA_HOME/bin:$PATH
  4. 保存并关闭文件

    • vim编辑器中,按Esc键退出编辑模式,然后输入:wq保存并退出。
  5. 使配置生效

    • 在终端中输入以下命令,使配置的环境变量立即生效:

      source ~/.bash_profile   # 如果使用bash
      source ~/.zshrc          # 如果使用zsh

五、注意事项

  1. 权限问题

    • 如果在编辑配置文件时遇到权限问题,可以在命令前添加sudo来提升权限,例如:

      sudo vim ~/.bash_profile
    • 输入密码后,即可进行编辑。

  2. 多个JDK版本

    • 如果你需要在同一台Mac上管理多个JDK版本,可以考虑使用sdkmanjabba等工具来切换JDK版本。
  3. 安装路径

    • 默认情况下,JDK会被安装在/Library/Java/JavaVirtualMachines/目录下。如果你选择了自定义安装路径,请确保在配置环境变量时使用正确的路径。

通过以上步骤,你应该能够在Mac上成功安装和配置JDK,为Java开发做好准备。

相关文章:

Mac安装jdk教程

在Mac上安装JDK(Java Development Kit)的步骤如下: 一、下载JDK安装包 访问Oracle官网: 打开浏览器,访问Oracle JDK下载页面。 选择JDK版本: 根据你的开发需求选择合适的JDK版本。例如,JDK 11…...

【HeadFirst系列之HeadFirst设计模式】第14天之与设计模式相处:真实世界中的设计模式

与设计模式相处:真实世界中的设计模式 设计模式是软件开发中的经典解决方案,它们帮助我们解决常见的设计问题,并提高代码的可维护性和可扩展性。在《Head First设计模式》一书中,作者通过生动的案例和通俗的语言,深入…...

JDBC 完全指南:掌握 Java 数据库交互的核心技术

JDBC 完全指南:掌握 Java 数据库交互的核心技术 一、JDBC 是什么?为什么它如此重要? JDBC(Java Database Connectivity)是 Java 语言中用于连接和操作关系型数据库的标准 API。它允许开发者通过统一的接口访问不同的数…...

Vue父子组件传递笔记

Vue父子组件传递笔记 props 父组件向子组件进行传值 &#xff08;1&#xff09;在父组件APP.vue <template><div> <!-- 给子组件Child.vue传递以msg的信号&#xff0c;传递的信息内容为messages --><Child :msg"messages"></Child>…...

文件上传漏洞与phpcms漏洞安全分析

目录 1. 文件上传漏洞简介 2. 文件上传漏洞的危害 3. 文件上传漏洞的触发条件 1. 文件必须能被服务器解析执行 2. 上传目录必须支持代码执行 3. 需要能访问上传的文件 4. 例外情况&#xff1a;非脚本文件也可能被执行 4. 常见的攻击手法 4.1 直接上传恶意文件 4.2 文件…...

【deepseek】辅助思考生物学问题:ICImapping构建遗传图谱gap较大

基于ICImapping构建遗传图谱的常见问题与解答 问题一&#xff1a;染色体两端标记间遗传距离gap较大 答疑一 标记密度不足&#xff08;如芯片设计时分布不均&#xff09;重组概率低基因组结构变异软件算法限制 Deepseek的解释 #### 1. **染色体末端的重组率较低** - **现象*…...

linux磁盘非lvm分区

linux磁盘非lvm分区 类似于windows划分C盘、D盘&#xff0c;并且不需要多个磁盘空间合一 图形化直接分区 通过gparted 这个提供直观的图形化分区&#xff0c;类似windows的磁盘管理工具 下载方式&#xff1a; 乌班图/debian系列&#xff1a; sudo apt install gparted红帽…...

Windows下sql server2012安装流程

准备工作 确认系统要求&#xff1a;确保 Windows 系统为 Windows 7 或更高版本&#xff0c;且为 64 位操作系统&#xff0c;CPU 在 2GHz 以上&#xff0c;内存 4GB 或更高。 下载安装包&#xff1a;从微软官方网站或其他可靠渠道下载 SQL Server 2012 安装包。 关闭相关软件&am…...

css之英文换行样式

在 CSS 中&#xff0c;要实现英文文本自动换行但不从单词中间断开的效果&#xff0c;可以使用 word-wrap 或 overflow-wrap 属性。以下是相关的 CSS 属性和它们的配置&#xff1a; 使用 overflow-wrap 或 word-wrap /* This property is used to handle word breaking */ .wo…...

绝美焦糖暖色调复古风景画面Lr调色教程,手机滤镜PS+Lightroom预设下载!

调色教程 通过 Lr 软件丰富的工具和功能&#xff0c;对风景照片在色彩、影调等方面进行调整。例如利用基本参数调整选项&#xff0c;精准控制照片亮度、对比度、色温、色调等基础要素&#xff1b;运用 HSL 面板可对不同色彩的色相、饱和度以及明亮度进行单独调节&#xff1b;利…...

文件解析:doc、docx、pdf

1.doc解析 ubuntu/debian系统应先安装工具 apt-get install python-dev libxml2-dev libxslt1-dev antiword unrtf poppler-utils pstotext tesseract-ocr \ flac ffmpeg lame libmad0 libsox-fmt-mp3 sox libjpeg-dev swig pip install textract解析&#xff1a; import te…...

计算机网络基础:VLAN(虚拟局域网)

1. VLAN 虚拟局域网&#xff1a;可以用来隔离广播 广播和广播域&#xff1a; arp 出不了路由器&#xff0c;只能攻击内网 路由器可以隔离广播&#xff08;物理隔离&#xff09;缺点是成本高、不灵活 2. VLAN 隔离广播 静态VLAN&#xff1a;基于交换机端口号划分 动态VLAN&am…...

C++学习笔记(十一)——循环结构

循环结构的作用 循环结构用于重复执行某一代码块&#xff0c;直到满足特定条件后退出循环。 C 提供了以下三种循环结构&#xff1a; for 循环&#xff08;确定次数的循环&#xff09;while 循环&#xff08;条件控制的循环&#xff09;do-while 循环&#xff08;至少执行一次的…...

【C++】二叉树相关算法题

一、根据二叉树创建字符串 题目描述&#xff1a; 给你二叉树的根节点 root &#xff0c;请你采用前序遍历的方式&#xff0c;将二叉树转化为一个由括号和整数组成的字符串&#xff0c;返回构造出的字符串。 空节点使用一对空括号对 “()” 表示&#xff0c;转化后需要省略所有…...

物联网IoT系列之MQTT协议基础知识

文章目录 物联网IoT系列之MQTT协议基础知识物联网IoT是什么&#xff1f;什么是MQTT&#xff1f;为什么说MQTT是适用于物联网的协议&#xff1f;MQTT工作原理核心组件核心机制 MQTT工作流程1. 建立连接2. 发布和订阅3. 消息确认4. 断开连接 MQTT工作流程图MQTT在物联网中的应用 …...

【大学生体质】智能 AI 旅游推荐平台(Vue+SpringBoot3)-完整部署教程

智能 AI 旅游推荐平台开源文档 项目前端地址 ☀️项目介绍 智能 AI 旅游推荐平台&#xff08;Intelligent AI Travel Recommendation Platform&#xff09;是一个利用 AI 模型和数据分析为用户提供个性化旅游路线推荐、景点评分、旅游攻略分享等功能的综合性系统。该系统融合…...

【Node.js入门笔记1---初始Node.js)】

Node.js入门笔记1 初始Node.js1.Node.js简介2.Node.js中js的运行环境3.Node.js 可以做什么4.Node.js 怎么学 初始Node.js 1.Node.js简介 Node.js 是一个基于 Chrome V8 引擎 的 JavaScript 运行时环境&#xff0c;用于在服务器端运行 JavaScript 代码。它让开发者可以用 Java…...

自学Java-JavaSE基础加强(多线程)

自学Java-JavaSE基础加强&#xff08;多线程&#xff09; 一、创建线程1、方式一&#xff1a;继承Thread类小结 2、方式二&#xff1a;实现Runnable接口小结 3、方式三&#xff1a;实现Callable接口4、小结 二、线程的常用方法三、线程安全1、认识线程安全2、模拟线程安全问题3…...

数字后端培训实战项目六大典型后端实现案例

Q1:请教一个问题&#xff0c;cts.sdc和func.sdc在innovus用如何切换&#xff1f;在flow哪一步切换输入cts.sdc&#xff1f;哪一步切换到func.sdc&#xff0c;具体如何操作&#xff1f; 这个学员其实就是在问使用分段长clock tree时具体的flow流程是怎么样的&#xff1f;针对时…...

安卓免费多功能工具:一站式解决 PDF 阅读、编辑、转换等需求

软件介绍 今天要给大家介绍一款功能强大的PDF处理软件——PDFgear Android版。它是专为安卓设备打造的&#xff0c;完全免费&#xff0c;无需破解和激活就能使用。 此前&#xff0c;我们分享过它的桌面端&#xff0c;收获了大家的一致好评。今天要着重介绍的手机APP版本&…...

3步实现AutoHotkey脚本独立运行:Ahk2Exe编译工具完全指南

3步实现AutoHotkey脚本独立运行&#xff1a;Ahk2Exe编译工具完全指南 【免费下载链接】Ahk2Exe Official AutoHotkey script compiler - written itself in AutoHotkey 项目地址: https://gitcode.com/gh_mirrors/ah/Ahk2Exe 你是否厌倦了每次运行AutoHotkey脚本都需要安…...

如何3步免费解锁WeMod专业版:2026年终极增强工具使用指南

如何3步免费解锁WeMod专业版&#xff1a;2026年终极增强工具使用指南 【免费下载链接】Wand-Enhancer Advanced UX and interoperability extension for Wand (WeMod) app 项目地址: https://gitcode.com/gh_mirrors/we/Wand-Enhancer 还在为WeMod专业版的订阅费用而犹豫…...

5步实现AutoHotkey脚本独立运行:Ahk2Exe编译实战指南

5步实现AutoHotkey脚本独立运行&#xff1a;Ahk2Exe编译实战指南 【免费下载链接】Ahk2Exe Official AutoHotkey script compiler - written itself in AutoHotkey 项目地址: https://gitcode.com/gh_mirrors/ah/Ahk2Exe 你是否遇到过这样的困扰&#xff1f;精心编写的A…...

从开源AI导师项目GURU-Ai拆解:如何构建具备教学能力的智能体

1. 项目概述&#xff1a;一个“AI导师”的诞生与定位最近在GitHub上看到一个挺有意思的项目&#xff0c;叫“Guru322/GURU-Ai”。光看名字&#xff0c;你可能会觉得这又是一个平平无奇的AI工具仓库。但点进去细看&#xff0c;你会发现它的野心不小——它想做的不是又一个聊天机…...

基于GitHub Pages与Jekyll的静态博客搭建与深度定制指南

1. 项目概述&#xff1a;一个静态博客的诞生与演进如果你对搭建个人博客感兴趣&#xff0c;或者正在寻找一个轻量、高效、完全可控的线上空间&#xff0c;那么“RyansGhost/RyansGhost.github.io”这个项目仓库&#xff0c;很可能就是你一直在寻找的答案。这不仅仅是一个托管在…...

数据中心碳减排:工作负载迁移与服务器调度优化

1. 数据中心碳减排技术概述 在数字经济时代&#xff0c;数据中心作为信息基础设施的核心载体&#xff0c;其能源消耗和碳排放问题日益凸显。据统计&#xff0c;全球数据中心电力消耗已占全球总用电量的1-2%&#xff0c;且随着AI、云计算等技术的快速发展&#xff0c;这一比例仍…...

Pro Trinket:Arduino UNO的紧凑型替代方案与双模编程实战

1. Pro Trinket&#xff1a;当Arduino遇上“口袋工程学”如果你和我一样&#xff0c;在创客圈子里摸爬滚打多年&#xff0c;肯定经历过这样的场景&#xff1a;一个基于Arduino UNO的酷炫原型在面包板上运行得风生水起&#xff0c;但当你试图把它塞进一个精致的3D打印外壳&#…...

Otter多模态大模型实战:从架构解析到部署应用的完整指南

1. 项目概述&#xff1a;当多模态大模型学会“看”与“说”最近在开源社区里&#xff0c;一个名为Otter的多模态大模型项目引起了我的注意。它来自EvolvingLMMs-Lab&#xff0c;这个实验室的名字就很有意思&#xff0c;“Evolving LMMs”—— 进化中的大型多模态模型。Otter 这…...

ARM Cortex-A5 SCU架构与多核缓存一致性解析

1. ARM Cortex-A5 SCU架构解析SCU&#xff08;Snoop Control Unit&#xff09;是Cortex-A5多核处理器中的关键组件&#xff0c;主要负责维护多核间的缓存一致性。当某个CPU核心修改了共享内存区域的数据时&#xff0c;SCU会自动通知其他核心的缓存进行更新或失效操作。这种机制…...

企业级应用如何通过 Taotoken 统一管理多个团队的模型调用

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 企业级应用如何通过 Taotoken 统一管理多个团队的模型调用 在中大型企业的技术实践中&#xff0c;多个项目组或产品线同时接入和使…...