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
参考文档:
- 【学习笔记】mac安装maven与idea自带maven_mac mvn-CSDN博客
- 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时,对话框不出现解决方案
解决方案:在<el-dialog>标签中,添加:append-to-body“true”*,对话框即可弹出。*...

postman调用ollama的api
按照如下设置,不需要设置key 保持长会话的方法 # 首次请求 curl http://localhost:11434/api/generate -d {"model": "deepseek-r1:32b","prompt": "请永久记住:110,1-12,之后所有数学计算必…...
PyTorch的dataloader制作自定义数据集
PyTorch的dataloader是用于读取训练数据的工具,它可以自动将数据分割成小batch,并在训练过程中进行数据预处理。以下是制作PyTorch的dataloader的简单步骤: 导入必要的库 import torch from torch.utils.data import DataLoader, Dataset定…...

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

Hadoop-HA集群部署
集群的服务器规划: 配置免密登陆:(这里示范的是第一台服务器,其余的操作一样),免密登陆是为了执行脚本统一操作,启动,如(hdfs集群:1上启动2.5.6.7)…...

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

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

【从0做项目】Java文档搜索引擎(9)烧脑终章!
阿华代码,不是逆风,就是我疯 你们的点赞收藏是我前进最大的动力!! 希望本文内容能够帮助到你!! 目录 文章导读 零:项目结果展示 一:导入 二:问题引入 1:情…...

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,學校編號,SchoolName nvarchar(500) NOT NULL DEFAULT comment 學校名稱,SchoolTelNo varchar(8) NULL DEFAULT comment電話號碼,PRIMARY KEY (SchoolId) #主…...

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

echarts 折线图动态基准线设置超出基准线标红
基准线属性:markLine 线条标红关键属性:visualMap 小于: lt (less than) 大于:gt (greater than) 小于等于:lte (Less than or equal to) 大于等于:gte (Greater than or equal to) 1、基础应用——2条基准…...

Part 3 第十二章 单元测试 Unit Testing
概述 第十二章围绕单元测试展开,阐述了单元测试的实践与重要性,通过对比其他测试类型,突出其特点,还介绍了单元测试的最佳实践、避免的反模式以及与测试替身相关的内容,为编写高质量单元测试提供指导。 章节概要 1…...
C++与Python:两种编程语言的区别
C和Python都是当今编程领域广泛使用的语言,它们各有特色,适用于不同的开发场景。本文将从语言特性、性能、学习难度、应用领域等多个方面探讨C与Python之间的区别。 一、语言特性 类型系统: C:是一种静态类型语言…...
Springboot 高频面试题
以下是Spring Boot的高频面试题及答案和底层原理解释: 基础概念 什么是Spring Boot,其主要特点是什么? 答案: Spring Boot本质上是一个建立在Spring框架之上的快速应用开发框架。其主要特点包括: 启动器:一…...
五年级数学知识边界总结思考-下册
目录 一、背景二、过程1.观察物体小学五年级下册“观察物体”知识点详解:由来、作用与意义**一、知识点核心内容****二、知识点的由来:从生活实践到数学抽象****三、知识的作用:解决实际问题的工具****四、学习的意义:培养核心素养…...
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算法中的向量
在人工智能(AI)算法中,向量(Vector)是一种将现实世界中的数据(如图像、文本、音频等)转化为计算机可处理的数值型特征表示的工具。它是连接人类认知(如语义、视觉特征)与…...
return this;返回的是谁
一个审批系统的示例来演示责任链模式的实现。假设公司需要处理不同金额的采购申请,不同级别的经理有不同的审批权限: // 抽象处理者:审批者 abstract class Approver {protected Approver successor; // 下一个处理者// 设置下一个处理者pub…...
动态 Web 开发技术入门篇
一、HTTP 协议核心 1.1 HTTP 基础 协议全称 :HyperText Transfer Protocol(超文本传输协议) 默认端口 :HTTP 使用 80 端口,HTTPS 使用 443 端口。 请求方法 : GET :用于获取资源,…...

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: 从华为开发者官网下载最新版DevEco Studio安装HarmonyOS 5.0 SDK 项目配置: // module.json5 {"module": {"requestPermissions": [{"name": "ohos.permis…...

AI语音助手的Python实现
引言 语音助手(如小爱同学、Siri)通过语音识别、自然语言处理(NLP)和语音合成技术,为用户提供直观、高效的交互体验。随着人工智能的普及,Python开发者可以利用开源库和AI模型,快速构建自定义语音助手。本文由浅入深,详细介绍如何使用Python开发AI语音助手,涵盖基础功…...
tomcat指定使用的jdk版本
说明 有时候需要对tomcat配置指定的jdk版本号,此时,我们可以通过以下方式进行配置 设置方式 找到tomcat的bin目录中的setclasspath.bat。如果是linux系统则是setclasspath.sh set JAVA_HOMEC:\Program Files\Java\jdk8 set JRE_HOMEC:\Program Files…...

恶补电源:1.电桥
一、元器件的选择 搜索并选择电桥,再multisim中选择FWB,就有各种型号的电桥: 电桥是用来干嘛的呢? 它是一个由四个二极管搭成的“桥梁”形状的电路,用来把交流电(AC)变成直流电(DC)。…...