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

mac开发环境配置笔记

1. 终端配置

参考: Mac终端配置笔记-CSDN博客

2. 下载JDK

到 oracle官网 下载jdk:

  • oracle官网 :Java Downloads | Oracle
  • mac的芯片为Intel系列下载 x64版本的jdk;为Apple Mx系列使用 Arm64版本;
  • oracle官网下载时报错:400 Bad Request Request Header Or Cookie Too Large,解决办法: “Command+Shift+N” 进入浏览器隐身模式,在隐身模式下访问oracle下载页面
    • 参考文档:在oracle下载jdk-8u162-linux-x64.tar.gz显示400 Bad Request Request Header Or Cookie Too Large_oracle request header or cookie too large-CSDN博客

这里以jdk11为例,下载完后,点击安装,默认安装路径 “/Library/Java/JavaVirtualMachines/jdk-11.jdk/Contents/Home”。设置java home,指定java使用自己安装的版本:

# step1:进入~文件夹
cd ~# step2: 编辑(若没有该文件则会自动新建) .bash_profile文件
vim .bash_profile# step3: 按 i 进入插入模式,在文件中新增如下配置
#修改java默认路径为自己下载安装的java版本
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-11.jdk/Contents/Home
export PATH=$PATH:$JAVA_HOME# step4. 按 esc 退出编辑, 输入:wq保存并退出文件# step5. 使新配置生效
source .bash_profile

3. 安装IDE

使用idea,根据需要选择下载版本:Download IntelliJ IDEA

4. 安装Maven

这里安装的Maven是在mac终端和IDEA的terminal窗口里使用,和IDEA使用的maven是两回事。IDEA一般默认使用其自带的maven(当然也可以手动指定为用户自己安装的版本)

4.1. 方案一:使用brew命令安装

使用 brew install maven 命令安装maven:

  • 使用 brew 命令安装不需要手动设置环境变量
  • 安装完使用 mvn -version 命令验证是否安装成功

引申问题:运行 brew install maven 时报错:zsh: command not found: brew ,说明没有安装homobrew,需要先安装 homobrew

# step1: 使用下面命令安装Homebrew
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"# step2. 检查Homebrew是否安装成功
brew -v

4.2. 方案二:手动从官网安装

从官网手动下载安装,需要配置环境变量

  • 下载最新版本maven:http://maven.apache.org/download.cgi
  • 配置环境变量
# step1:进入~文件夹
cd ~# step2: 编辑(若没有该文件则会自动新建) .bash_profile文件
vim .bash_profile# step3: 按 i 进入插入模式,在文件中新增如下配置
export MVN_HOME=/usr/local/apache-maven-x.x.x/bin
export PATH=$PATH:$MVN_HOME# step4. 按 esc 退出编辑, 输入:wq保存并退出文件# step5. 使新配置生效
source .bash_profile# step6.验证是否安装成功
mvn -version

参考文档:

  1. 【学习笔记】mac安装maven与idea自带maven_mac mvn-CSDN博客
  2. Mac 安装Maven的几种方法和操作步骤_mac安装maven-CSDN博客​​​​​

其他信息:

maven安装好后,使用mvn命令时出现意料之外的错误,可以先通过 “mvn -v ”命令查看maven所依赖的 java版本是否正确(原始用的是openjdk版本)。

如果不是预期内的java版本,可以通过设置 java home,将java默认路径改为自己安装的java版本。

如果上述操作解决不了问题,再搜索其他解法。也可参考该文档附录部分的问题: 【学习笔记】mac安装maven与idea自带maven_mac mvn-CSDN博客

5. 配置git

mac默认已安装了git,通过 “ git -v ”命令可以验证是否已安装。如未安装可以使用 “brew install git ” 命令安装。

5.1. 配置用户名和邮箱

一般在新系统上,需要先配置下 Git 工作环境。配置工作只需一次,以后升级时还会沿用现在的配置。

#用户名和邮箱是【必须】配置项, 这个信息将用用于Git 提交
git config --global user.name  exampleName          # 设置用户名
git config --global user.email example@example.com  # 邮箱地址# 这些建议配置项
git config --global push.default simple     # 要求 Git 版本 1.9.5 以上
git config --global core.autocrlf false     # 让Git不要管Windows/Unix换行符转换的事

配置完成后可以使用 “git config --global --list” 命令查看是否配置正确。这些git的全局变量 配置文件在【 ~/.gitconifg 】中,也可以“cat ~/.gitconifg ”查看。

5.2. 配置SSH KEY

配置SSH Key主要是为了本地计算机和代码托管平台之间建立安全连接,否则可能没有权限从托管平台clone代码到本地。

# step1. 生成ssh key
ssh-keygen -t rsa -C 邮箱  #例如: ssh-keygen -t rsa -C example@example.com# step2.获取你生成的公钥
cat ~/.ssh/id_rsa.pub# step3.复制这个公钥放到代码托管平台-个人设置中的SSH Keys下

参考文档: Mac上配置Git和设置SSH_mac git ssh-CSDN博客

相关文章:

mac开发环境配置笔记

1. 终端配置 参考: Mac终端配置笔记-CSDN博客 2. 下载JDK 到 oracle官网 下载jdk: oracle官网 :Java Downloads | Oraclemac的芯片为Intel系列下载 x64版本的jdk;为Apple Mx系列使用 Arm64版本;oracle官网下载时报错:400 Bad R…...

重装CentOS YUM

1. 检查是否已安装 YUM 运行以下命令检查 YUM 是否已安装: yum list installed | grep yum 如果输出中包含 yum,则说明 YUM 已安装。 2. 卸载旧版本的 YUM(如有必要) 如果需要重新安装 YUM,可以先卸载旧版本&…...

对免认证服务提供apikey验证

一些服务不带认证,凡是可以访问到服务端口,都可以正常使用该服务,方便是方便,但是不够安全。 比如ollama默认安装后就是这样。现在据说网上扫一下端口11434,免apikey的ollama服务一大堆。。。 那我们怎样将本机安装的o…...

数据库驱动免费下载(Oracle、Mysql、达梦、Postgresql)

数据库驱动找起来好麻烦,我整理到了一起,需要的朋友免费下载:驱动下载 目前收录了Oracle、Mysql、达梦、Postgresql的数据库驱动的多个版本,后续可能会分享更多。...

OceanBase 初探学习历程之——安装部署

一、介绍 OceanBase 数据库是一个原生的分布式关系数据库,它是完全由阿里巴巴和蚂蚁集团自主研发 的项目。OceanBase 数据库构建在通用服务器集群上,基于 Paxos 协议和分布式架构,提供 金融级高可用和线性伸缩能力,不依赖特定硬件…...

Windows 下免费开源的多格式文件差异对比工具

软件介绍 有这样一款诞生于 2000 年、专为 Windows 系统打造的开源免费工具,截至 2025 年 1 月已更新至 2.16.46 版本,它就是文件与文件夹比较的得力助手。 其支持文本文件、Word、Excel、PPT 网页、图像等多种格式对比,利用高亮显示行内差…...

Vue3+element UI:使用el-dialog时,对话框不出现解决方案

​​​​ 解决方案&#xff1a;在<el-dialog>标签中&#xff0c;添加:append-to-body“true”*&#xff0c;对话框即可弹出。*...

postman调用ollama的api

按照如下设置&#xff0c;不需要设置key 保持长会话的方法 # 首次请求 curl http://localhost:11434/api/generate -d {"model": "deepseek-r1:32b","prompt": "请永久记住&#xff1a;110&#xff0c;1-12&#xff0c;之后所有数学计算必…...

PyTorch的dataloader制作自定义数据集

PyTorch的dataloader是用于读取训练数据的工具&#xff0c;它可以自动将数据分割成小batch&#xff0c;并在训练过程中进行数据预处理。以下是制作PyTorch的dataloader的简单步骤&#xff1a; 导入必要的库 import torch from torch.utils.data import DataLoader, Dataset定…...

如何调用 DeepSeek API:详细教程与示例

目录 一、准备工作 二、DeepSeek API 调用步骤 1. 选择 API 端点 2. 构建 API 请求 3. 发送请求并处理响应 三、Python 示例&#xff1a;调用 DeepSeek API 1. 安装依赖 2. 编写代码 3. 运行代码 四、常见问题及解决方法 1. API 调用返回 401 错误 2. API 调用返回…...

Hadoop-HA集群部署

集群的服务器规划&#xff1a; 配置免密登陆&#xff1a;&#xff08;这里示范的是第一台服务器&#xff0c;其余的操作一样&#xff09;&#xff0c;免密登陆是为了执行脚本统一操作&#xff0c;启动&#xff0c;如&#xff08;hdfs集群&#xff1a;1上启动2.5.6.7&#xff09…...

三、linux字符驱动详解

在上一节完成NFS开发环境的搭建后&#xff0c;本节将探讨Linux字符设备驱动的开发。字符设备驱动作为Linux内核的重要组成部分&#xff0c;主要负责管理与字符设备&#xff08;如串口、键盘等&#xff09;的交互&#xff0c;并为用户空间程序提供统一的读写操作接口。 驱动代码…...

【Research Proposal】基于提示词方法的智能体工具调用研究——研究问题

博客主页&#xff1a; [小ᶻ☡꙳ᵃⁱᵍᶜ꙳] 本文专栏: AIGC | ChatGPT 文章目录 &#x1f4af;前言&#x1f4af;研究问题1. 如何优化提示词方法以提高智能体的工具调用能力&#xff1f;2. 如何解决提示词方法在多模态任务中的挑战&#xff1f;3. 如何通过提示词优化智能体…...

【从0做项目】Java文档搜索引擎(9)烧脑终章!

阿华代码&#xff0c;不是逆风&#xff0c;就是我疯 你们的点赞收藏是我前进最大的动力&#xff01;&#xff01; 希望本文内容能够帮助到你&#xff01;&#xff01; 目录 文章导读 零&#xff1a;项目结果展示 一&#xff1a;导入 二&#xff1a;问题引入 1&#xff1a;情…...

python: SQLAlchemy (ORM) Simple example using mysql in Ubuntu 24.04

mysql sql script: create table School 表 (SchoolId char(5) NOT NULL comment主鍵primary key&#xff0c;學校編號,SchoolName nvarchar(500) NOT NULL DEFAULT comment 學校名稱,SchoolTelNo varchar(8) NULL DEFAULT comment電話號碼,PRIMARY KEY (SchoolId) #主…...

如何为自己的 PDF 文件添加密码?在线加密 PDF 文件其实更简单

随着信息泄露和数据安全问题的日益突出&#xff0c;保护敏感信息变得尤为重要。加密 PDF 文件是一种有效的手段&#xff0c;可以确保只有授权用户才能访问或修改文档内容。本文将详细介绍如何使用 CleverPDF 在线工具为你的 PDF 文件添加密码保护&#xff0c;确保其安全性。 为…...

echarts 折线图动态基准线设置超出基准线标红

基准线属性&#xff1a;markLine 线条标红关键属性&#xff1a;visualMap 小于&#xff1a; lt (less than) 大于&#xff1a;gt (greater than) 小于等于&#xff1a;lte (Less than or equal to) 大于等于&#xff1a;gte (Greater than or equal to) 1、基础应用——2条基准…...

Part 3 第十二章 单元测试 Unit Testing

概述 第十二章围绕单元测试展开&#xff0c;阐述了单元测试的实践与重要性&#xff0c;通过对比其他测试类型&#xff0c;突出其特点&#xff0c;还介绍了单元测试的最佳实践、避免的反模式以及与测试替身相关的内容&#xff0c;为编写高质量单元测试提供指导。 章节概要 1…...

C++与Python:两种编程语言的区别

C和Python都是当今编程领域广泛使用的语言&#xff0c;它们各有特色&#xff0c;适用于不同的开发场景。本文将从语言特性、性能、学习难度、应用领域等多个方面探讨C与Python之间的区别。 一、语言特性 类型系统&#xff1a; C&#xff1a;是一种静态类型语言&#xf…...

Springboot 高频面试题

以下是Spring Boot的高频面试题及答案和底层原理解释&#xff1a; 基础概念 什么是Spring Boot&#xff0c;其主要特点是什么&#xff1f; 答案&#xff1a; Spring Boot本质上是一个建立在Spring框架之上的快速应用开发框架。其主要特点包括&#xff1a; 启动器&#xff1a;一…...

五年级数学知识边界总结思考-下册

目录 一、背景二、过程1.观察物体小学五年级下册“观察物体”知识点详解&#xff1a;由来、作用与意义**一、知识点核心内容****二、知识点的由来&#xff1a;从生活实践到数学抽象****三、知识的作用&#xff1a;解决实际问题的工具****四、学习的意义&#xff1a;培养核心素养…...

Java多线程实现之Callable接口深度解析

Java多线程实现之Callable接口深度解析 一、Callable接口概述1.1 接口定义1.2 与Runnable接口的对比1.3 Future接口与FutureTask类 二、Callable接口的基本使用方法2.1 传统方式实现Callable接口2.2 使用Lambda表达式简化Callable实现2.3 使用FutureTask类执行Callable任务 三、…...

【AI学习】三、AI算法中的向量

在人工智能&#xff08;AI&#xff09;算法中&#xff0c;向量&#xff08;Vector&#xff09;是一种将现实世界中的数据&#xff08;如图像、文本、音频等&#xff09;转化为计算机可处理的数值型特征表示的工具。它是连接人类认知&#xff08;如语义、视觉特征&#xff09;与…...

return this;返回的是谁

一个审批系统的示例来演示责任链模式的实现。假设公司需要处理不同金额的采购申请&#xff0c;不同级别的经理有不同的审批权限&#xff1a; // 抽象处理者&#xff1a;审批者 abstract class Approver {protected Approver successor; // 下一个处理者// 设置下一个处理者pub…...

动态 Web 开发技术入门篇

一、HTTP 协议核心 1.1 HTTP 基础 协议全称 &#xff1a;HyperText Transfer Protocol&#xff08;超文本传输协议&#xff09; 默认端口 &#xff1a;HTTP 使用 80 端口&#xff0c;HTTPS 使用 443 端口。 请求方法 &#xff1a; GET &#xff1a;用于获取资源&#xff0c;…...

Golang——6、指针和结构体

指针和结构体 1、指针1.1、指针地址和指针类型1.2、指针取值1.3、new和make 2、结构体2.1、type关键字的使用2.2、结构体的定义和初始化2.3、结构体方法和接收者2.4、给任意类型添加方法2.5、结构体的匿名字段2.6、嵌套结构体2.7、嵌套匿名结构体2.8、结构体的继承 3、结构体与…...

在鸿蒙HarmonyOS 5中使用DevEco Studio实现企业微信功能

1. 开发环境准备 ​​安装DevEco Studio 3.1​​&#xff1a; 从华为开发者官网下载最新版DevEco Studio安装HarmonyOS 5.0 SDK ​​项目配置​​&#xff1a; // module.json5 {"module": {"requestPermissions": [{"name": "ohos.permis…...

AI语音助手的Python实现

引言 语音助手(如小爱同学、Siri)通过语音识别、自然语言处理(NLP)和语音合成技术,为用户提供直观、高效的交互体验。随着人工智能的普及,Python开发者可以利用开源库和AI模型,快速构建自定义语音助手。本文由浅入深,详细介绍如何使用Python开发AI语音助手,涵盖基础功…...

tomcat指定使用的jdk版本

说明 有时候需要对tomcat配置指定的jdk版本号&#xff0c;此时&#xff0c;我们可以通过以下方式进行配置 设置方式 找到tomcat的bin目录中的setclasspath.bat。如果是linux系统则是setclasspath.sh set JAVA_HOMEC:\Program Files\Java\jdk8 set JRE_HOMEC:\Program Files…...

恶补电源:1.电桥

一、元器件的选择 搜索并选择电桥&#xff0c;再multisim中选择FWB&#xff0c;就有各种型号的电桥: 电桥是用来干嘛的呢&#xff1f; 它是一个由四个二极管搭成的“桥梁”形状的电路&#xff0c;用来把交流电&#xff08;AC&#xff09;变成直流电&#xff08;DC&#xff09;。…...