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

Mac上详细配置java开发环境和软件(更新中)

文章目录

    • 概要
    • JDK的配置
      • JDK下载安装
      • 配置JDK环境变量文件
    • Idea的安装
    • Mysql安装和配置
    • Navicat Premium16.1安装
    • 安装Vscode
    • 安装和配置Maven
      • 配置本地仓库
      • 配置阿里云私服
      • Idea集成Maven

概要

这里使用的是M3型片 14.6版本的Mac

用到的资源放在网盘
链接: https://pan.baidu.com/s/17D8lMbsKEsSbCtpDdjCqIQ?pwd=0830 提取码: 0830
在这里插入图片描述

用了很久的windows,这是入手Mac后做的一些Java环境搭建记录,希望可以给有需要的人提供一些帮助

JDK的配置

JDK下载安装

[Oracle地址](https://www.oracle.com)
进入官网点击javadownloads

在这里插入图片描述
这里我选择下载的是Jdk17dmg包,请根据自己需要下载jdk版本 (提示:m芯片必须ARM版本否则编译报错)
在这里插入图片描述
登陆oracle账号后,下载安装

配置JDK环境变量文件

打开终端,进入 JDK 安装目录,查看是否安装成功

cd /Library/Java/JavaVirtualMachines

在这里插入图片描述

# 进入当前用户的 home 目录
cd /Users/xxx    xxx改为自己的电脑用户名称# 输入
cd ~# 打开环境变量配置文件
vi ~/.bash_profile
# 注意这里用touch命令第一次配置环境变量会报错:.bash_profile does not exist.,意思需要创建文件 直接vi、vim都行。
#进行如下配置
JAVA_HOME=这里输入您前面复制的路径
PATH=$JAVA_HOME/bin:$PATH:.
CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:.
export JAVA_HOME
export PATH
export CLASSPATH

按下ESC键盘 输入:wq 保存退出。

# 配置文件立即生效
source ~/.bash_profile# 验证:查看 JAVA_HOME 目录
echo $JAVA_HOME# 查看 JDK 版本信息
java -version

查看版本信息即安装成功
在这里插入图片描述

Idea的安装

[Intellij IEDA下载地址](https://www.jetbrains.com/idea/nextversion/)

在官网上下载一个自己需要的idea版本,这里我选择了2021.3(适用到2024.1)
由于破解软件涉及版权问题,以下步骤仅供学习参考,请尽量购买正版软件以获得最佳的使用体验和法律保障。

1.在文件夹位置打开终端,输入sh idea.sh 提示success就成功了
在这里插入图片描述
2.成功使用
在这里插入图片描述

Mysql安装和配置

[mysql下载地址](https://www.mysql.com/downloads/)
进入官网后,找到 Mysql Community(GPL) Downloads点击进入下载,下图所示:
在这里插入图片描述
选择:Mysql Community Server
在这里插入图片描述
进入如下页面,这里有多个平台的下载的链接,我选择8.0.4版本的“DMG格式”的下载链接
在这里插入图片描述
下载完成后, 直接双击打开,安装过程基本都是直接点下一步,选择Use Legacy Password Encryption,要记得输入密码,这个密码也是登陆mysql的密码,非常重要,接下来只需继续点下一步,直到安装完毕即可

在系统偏好设置内,查看是否有mysql,如果有,即安装成功。
在这里插入图片描述

配置Mysql
打开.bash_profile文件后,按下字母i键,进入编辑模式,并加入语句PATH=$PATH:/usr/local/mysql/bin,

在这里插入图片描述
环境变量配置完毕后,执行source ~/.bash_profile命令,使得环境变量配置得以生效。

source ~/.bash_profile

打开终端,输入mysql -u root -p
在这里插入图片描述
注意:由于mysql的安装路径不同,在配置环境变量PATH=$PATH:/usr/local/mysql/bin时,路径可能也不同,我们要更具自己安装的路径来配置,具体注意事项和报错提示会在下面mysql的使用报错详解中有详细的讲解。

Navicat Premium16.1安装

1.双击打开【Navicat 16.1.dmg】安装包。

2.点击【同意】。

3.将【Navicat…】图标拖到【Applications】文件夹中。
4.打开终端:点击桌面【启动台】-点击【其他】文件夹,点击【终端】启动。
在这里插入图片描述

5.在终端中输入【sudo xattr -r -d com.apple.quarantine】+空格(注意,输完代码后,一定要加空格键)。

在这里插入图片描述
6.点击桌面空白处,点击桌面菜单栏中的【前往】,点击【应用程序】。
在这里插入图片描述

7.将应用程序中的【Navicat…】拖到终端中,在键盘上按【Enter】键。
在这里插入图片描述
8.点击【钥匙】图标,输入电脑【开机密码】后,在键盘上按【Enter】键。(注意输入电脑开机密码时不显示,输完直接按【Enter】键即可
9.点击桌面程序坞中的【启动台】图标,点击【Navicat…】图标启动软件。
安装成功
在这里插入图片描述

安装Vscode

[vscode下载地址](https://code.visualstudio.com/)
在这里插入图片描述
下载完成后,将该 app 文件,放入到 应用程序 文件夹下。

安装插件
在这里插入图片描述
写个c程序进行测试,测试成功
在这里插入图片描述

安装和配置Maven

[Maven下载地址](https://maven.apache.org/download.cgi)
1.打开环境变量文档:

open ~/.bash_profile

2.在弹出文档结尾加入配置:

#maven
export MAVEN_HOME=/maven根路径
export PATH=$MAVEN_HOME/bin:$PATH

3.保存变量配置:

source ~/.bash_profile

4.验证安装结果:

mvn -version

在这里插入图片描述

配置本地仓库

这里我创建了一个文件夹为repository来作本地仓库

右键选择合适的打开方式打开settings.xml
在上半部分找到这段语句,把他从注释中粘贴出来,修改其中的路径
在这里插入图片描述

配置阿里云私服

修改conf/settings.xml中的标签,为其添加子标签

在中间部分找到

    <!-- 配置阿里云私服镜像 --><mirror><id>alimaven</id><name>aliyun maven</name><url>http://maven.aliyun.com/nexus/content/groups/public/</url><mirrorOf>central</mirrorOf></mirror>
![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/07d9e2adfad24a6ca8c5ea0b23b1c160.png)

command+s保存配置完成!

Idea集成Maven

打开idea settings
在这里插入图片描述
maven home选择maven自己的下载路径
本地仓库选择自己创建的maven本地仓库
在这里插入图片描述
创建一个maven工程,进行测试
测试完成
在这里插入图片描述

相关文章:

Mac上详细配置java开发环境和软件(更新中)

文章目录 概要JDK的配置JDK下载安装配置JDK环境变量文件 Idea的安装Mysql安装和配置Navicat Premium16.1安装安装Vscode安装和配置Maven配置本地仓库配置阿里云私服Idea集成Maven 概要 这里使用的是M3型片 14.6版本的Mac 用到的资源放在网盘 链接: https://pan.baidu.com/s/17…...

jmeter常用配置元件介绍总结之定时器

系列文章目录 安装jmeter jmeter常用配置元件介绍总结之定时器 5.定时器5.1.固定定时器5.2.统一随机定时器5.3.Precise Throughput Timer5.4.Constant Throughput Timer5.5.Synchronizing Timer5.6.泊松随机定时器5.7.高斯随机定时器 5.定时器 5.1.固定定时器 固定定时器Cons…...

Spring——提前编译

提前编译&#xff1a;AOT AOT概述 JIT与AOT的区别 JIT和AOT 这个名词是指两种不同的编译方式&#xff0c;这两种编译方式的主要区别在于是否在“运行时”进行编译 &#xff08;1&#xff09;JIT&#xff0c; Just-in-time,动态(即时)编译&#xff0c;边运行边编译&#xff1…...

乐理的学习(音程)

二度&#xff0c;三度&#xff0c;六度&#xff0c;七度的大n度都是直接的音名到音名&#xff0c;如#A到#G的&#xff0c;这样为大n度 而这个基础上向内收&#xff0c;收半音为小n度&#xff0c;在小n度再收&#xff0c;为减n度 在大n度的基础上再向外扩半音&#xff0c;为增…...

【网络】数据链路层协议——以太网,ARP协议

> 作者&#xff1a;დ旧言~ > 座右铭&#xff1a;松树千年终是朽&#xff0c;槿花一日自为荣。 > 目标&#xff1a;了解什么是以太网协议和ARP协议。 > 毒鸡汤&#xff1a;有些事情&#xff0c;总是不明白&#xff0c;所以我不会坚持。早安! > 专栏选自&#xf…...

Linux分区、挂载、配额、逻辑卷、RAID、系统综合状态查看

分区与挂载 fdisk fdisk 命令是一个用于磁盘分区管理的命令行工具&#xff0c;可以用来创建、删除、调整分区等操作。常用的 fdisk 命令选项包括&#xff1a; fdisk -l&#xff1a;列出系统中的所有磁盘分区信息。 fdisk /dev/sdX&#xff1a;打开指定磁盘进行分区操作。 n&…...

3D Gaussian Splatting 代码层理解之Part1

2023 年初,来自蔚蓝海岸大学和 马克斯普朗克学会的作者发表了一篇题为“用于实时现场渲染的 3D 高斯泼溅”的论文。该论文提出了实时神经渲染的重大进步,超越了NeRF等以前方法的实用性。高斯泼溅不仅减少了延迟,而且达到或超过了 NeRF 的渲染质量,在神经渲染领域掀起了一场…...

Qt小知识-Q_GLOBAL_STATIC

你还在为创建全局静态对象烦恼嘛&#xff0c;它来了&#xff01;它来了&#xff01; qt5提供了两个宏定义Q_GLOBAL_STATIC和Q_GLOBAL_STATIC_WITH_ARGS来实现。可以创建一个全局静态对象&#xff0c;对象在第一次使用时初始化自身&#xff0c;这意味着它不会增加应用程序或库的…...

【SpringBoot】使用过滤器进行XSS防御

在Spring Boot中&#xff0c;我们可以使用注解的方式来进行XSS防御。注解是一种轻量级的防御手段&#xff0c;它可以在方法或字段级别对输入进行校验&#xff0c;从而防止XSS攻击。 而想对全局的请求都进行XSS防御可以使用servlet中的过滤器或者spring mvc中的拦截器&#xff…...

创建vue插件,发布npm

开发步骤&#xff1a;1.创建一个vue项目&#xff0c;2.开发一个组件。 3.注册成插件。 4.vite和package.json配置。5.发布到npm &#xff11;.创建一个vue项目 npm create vuelatest 生成了vue项目之后&#xff0c;得到了以下结构。 在src下创建个plugins目录。用于存放开发的…...

【Android Compose原创组件】可拖动滚动条的完美实现

项目背景 我在使用安卓Compose开发自己的【JK管理器】的过程中&#xff0c;很多地方都需要使用滚动条&#xff0c;在Github上也有实现的比较好&#xff0c;但是大多都是基于View&#xff08;我要的是Compose啊&#xff09;。 在研究Android 官方示例项目 nowinandroid 中&…...

【模块一】kubernetes容器编排进阶实战之资源管理核心概念

kubernetes 资源管理核心概念 k8s的设计理念—分层架构 CRI-container runtime interface-容器运行接口 CNI-container network interface-容器网络接口 CSI-container storage interface-容器存储接口 k8s的设计理念—API设计原则 https://www.kubernetes.org.cn/kubernete…...

用Python设置PowerPoint幻灯片背景

使用Python自动化处理Office文档&#xff0c;如PowerPoint演示文稿&#xff0c;是提高效率和创造力的重要手段。设置PowerPoint幻灯片背景不仅能够增强演示文稿的视觉吸引力&#xff0c;还能帮助传达特定的情感或信息&#xff0c;使观众更加投入。通过编程方式批量修改幻灯片背…...

Restful API接⼝简介及为什么要进⾏接⼝压测

一、RESTful API简介 在现代Web开发中&#xff0c;RESTful API已经成为一种标准的设计模式&#xff0c;用于构建和交互网络应用程序。本文将详细介绍RESTful API的基本概念、特点以及如何使用它来设计高效的API接口。 1. 基于协议 HTTP 或 HTTPS RESTful API通常使用HTTP&am…...

[pyspark] pyspark中如何修改列名字

使用 .withColumnRenamed 来重命名&#xff0c;直接看demo&#xff1a; from pyspark.sql import SparkSessionspark SparkSession.builder.appName("example").getOrCreate()data [("Alice", 1, 200),("Bob", 2, 300),("Charlie",…...

掌握 Spring Boot 的最佳方法 – 学习路线图

在企业界&#xff0c;人们说“Java 永垂不朽&#xff01;”。但为什么呢&#xff1f;Java 仍然是开发企业应用程序的主要平台之一。大型公司使用企业应用程序来赚钱。这些应用程序具有高可靠性要求和庞大的代码库。根据Java开发人员生产力报告&#xff0c;62% 的受访开发人员使…...

element-ui】使用el_upload上传文件无法动态修改action

问题&#xff1a;最近在使用el_upload上传文件时&#xff0c;发现无法动态修改action的值&#xff0c;进行提交时&#xff0c;caseId2还是默认值null 原因&#xff1a;el-upload的先执行上传&#xff0c;后执行action里的响应&#xff0c;也就是赋值等操作。 解决方法&#x…...

如何查看电脑支持的最大内存

如何查看电脑支持的最大内存 要查看电脑支持的最大内存容量&#xff0c;可以通过以下几种方法&#xff1a; 一、使用Windows命令查询 打开命令提示符&#xff1a;按下“WinR”键&#xff0c;打开运行窗口&#xff0c;输入“cmd”&#xff0c;然后点击确定。输入查询命令&…...

24 年第十届数维杯国际数模竞赛赛题浅析

本次万众瞩目的数维杯国际大学生数学建模赛题已正式出炉&#xff0c;无论是赛题难度还是认可度&#xff0c;该比赛都是数模届的独一档&#xff0c;含金量极高&#xff0c;可以用于综测加分、保研、简历添彩等各方面。考虑到大家解题实属不易&#xff0c;为了帮助大家取得好成绩…...

Dubbo 3.x源码(25)—Dubbo服务引用源码(8)notify订阅服务通知更新

基于Dubbo 3.1&#xff0c;详细介绍了Dubbo服务的发布与引用的源码。 此前我们学习了接口级的服务引入订阅的refreshInterfaceInvoker方法&#xff0c;当时还有最为关键的notify服务通知更新的部分源码没有学习&#xff0c;本次我们来学习notify通知本地服务更新的源码。 Dubb…...

Linux简单的操作

ls ls 查看当前目录 ll 查看详细内容 ls -a 查看所有的内容 ls --help 查看方法文档 pwd pwd 查看当前路径 cd cd 转路径 cd .. 转上一级路径 cd 名 转换路径 …...

Nuxt.js 中的路由配置详解

Nuxt.js 通过其内置的路由系统简化了应用的路由配置&#xff0c;使得开发者可以轻松地管理页面导航和 URL 结构。路由配置主要涉及页面组件的组织、动态路由的设置以及路由元信息的配置。 自动路由生成 Nuxt.js 会根据 pages 目录下的文件结构自动生成路由配置。每个文件都会对…...

Python爬虫(二):爬虫完整流程

爬虫完整流程详解&#xff08;7大核心步骤实战技巧&#xff09; 一、爬虫完整工作流程 以下是爬虫开发的完整流程&#xff0c;我将结合具体技术点和实战经验展开说明&#xff1a; 1. 目标分析与前期准备 网站技术分析&#xff1a; 使用浏览器开发者工具&#xff08;F12&…...

C++ 基础特性深度解析

目录 引言 一、命名空间&#xff08;namespace&#xff09; C 中的命名空间​ 与 C 语言的对比​ 二、缺省参数​ C 中的缺省参数​ 与 C 语言的对比​ 三、引用&#xff08;reference&#xff09;​ C 中的引用​ 与 C 语言的对比​ 四、inline&#xff08;内联函数…...

2025 后端自学UNIAPP【项目实战:旅游项目】6、我的收藏页面

代码框架视图 1、先添加一个获取收藏景点的列表请求 【在文件my_api.js文件中添加】 // 引入公共的请求封装 import http from ./my_http.js// 登录接口&#xff08;适配服务端返回 Token&#xff09; export const login async (code, avatar) > {const res await http…...

【笔记】WSL 中 Rust 安装与测试完整记录

#工作记录 WSL 中 Rust 安装与测试完整记录 1. 运行环境 系统&#xff1a;Ubuntu 24.04 LTS (WSL2)架构&#xff1a;x86_64 (GNU/Linux)Rust 版本&#xff1a;rustc 1.87.0 (2025-05-09)Cargo 版本&#xff1a;cargo 1.87.0 (2025-05-06) 2. 安装 Rust 2.1 使用 Rust 官方安…...

Qt 事件处理中 return 的深入解析

Qt 事件处理中 return 的深入解析 在 Qt 事件处理中&#xff0c;return 语句的使用是另一个关键概念&#xff0c;它与 event->accept()/event->ignore() 密切相关但作用不同。让我们详细分析一下它们之间的关系和工作原理。 核心区别&#xff1a;不同层级的事件处理 方…...

Modbus RTU与Modbus TCP详解指南

目录 1. Modbus协议基础 1.1 什么是Modbus? 1.2 Modbus协议历史 1.3 Modbus协议族 1.4 Modbus通信模型 🎭 主从架构 🔄 请求响应模式 2. Modbus RTU详解 2.1 RTU是什么? 2.2 RTU物理层 🔌 连接方式 ⚡ 通信参数 2.3 RTU数据帧格式 📦 帧结构详解 🔍…...

Python爬虫实战:研究Restkit库相关技术

1. 引言 1.1 研究背景与意义 在当今信息爆炸的时代,互联网上存在着海量的有价值数据。如何高效地采集这些数据并将其应用于实际业务中,成为了许多企业和开发者关注的焦点。网络爬虫技术作为一种自动化的数据采集工具,可以帮助我们从网页中提取所需的信息。而 RESTful API …...

LUA+Reids实现库存秒杀预扣减 记录流水 以及自己的思考

目录 lua脚本 记录流水 记录流水的作用 流水什么时候删除 我们在做库存扣减的时候&#xff0c;显示基于Lua脚本和Redis实现的预扣减 这样可以在秒杀扣减的时候保证操作的原子性和高效性 lua脚本 // ... 已有代码 ...Overridepublic InventoryResponse decrease(Inventor…...