❤ 给自己的mac系统上安装java环境
❤ 给自己的mac系统上安装java环境
🍓 作为前端工程师如何给自己的mac系统上安装java环境
🍎 最近因为自己的一些项目需求,mac电脑上需要安装一些后台的java环境,用来跑后台的java程序,于是从一个前端工程师的角度安装了一些mac跑java环境需要软件和配置
1、idea软件安装
首先是跑后台常用的软件,我用的idea
官网地址:idea官网
这里我使用了m1适配的老版本,2020年的 2020.3.4版本

官网上的版本直接下载就ok啦!
然后一路安装就完成了
2、JDK1.8
因为OracleJDK暂时并不支持arm架构的芯片,所以我们使用openjdk:zulu版本,百度网盘地址:
链接: [M1芯片jdk1.8百度网盘地址](https://pan.baidu.com/s/1pkv04x7CJy4AbU5H8pUmhA) 密码: 5kwp
- 检测mac上是否安装成功java jdk1.8 的环境呢
mac 快捷键: command + 空格 输入ter按回车键调出终端窗口
java -version 即可查看自己的mac上有没有装java环境
3、mysql数据库安装
概述:后台环境开发需要数据库:MySql
① 下载,官网下载即可
直接去[MYSQL下载地址](https://dev.mysql.com/downloads/mysql/)
然后一路下载安装完事//Path路径附加MySQL的bin目录
PATH="$PATH":/usr/local/mysql/bin
//登陆MySQL (密码就是前面自己设定的临时密码)
mysql -u root -p已经启动了mysql
详细步骤:
② 使用
(1)启动MySQL服务
sudo /usr/local/MYSQL/support-files/mysql.server start
(2)停止MySQL服务
sudo /usr/local/mysql/support-files/mysql.server stop
(3)重启MySQL服务
sudo /usr/local/mysql/support-files/mysql.server restart
(4)MySQL常见的一些操作命令
连接mysql
连接到本机上的MYSQL
打开DOS窗口,进入目录 mysqlbin,再键入命令mysql -uroot -p,回车后提示后输入密码
创建一个数据库:
建库:create database 库名
查看本地的mysql数据库:
show databases;
修改密码
mysql admin -u root -p abc password def
建表:create table 表名 (字段设定列表);
显示数据表的结构:describe 表名;
删库和删表:
drop database 库名;
drop table 表名;
显示表中的记录:select * from 表名;
将表中记录清空:delete from 表名;
③ Mac安装Navicat for MySQL(数据库管理工具)
对navicat的操作
navicat如何设置成中文
(步骤1) 打开软件,选择“Tools”打开
(步骤2) 打开软件,点击Options打开
(步骤3) language设置成中文
mac上我安装的没有 :没找到,于是找了找设置中文的方法再次
解决设置中文的方法
- 比较麻烦 最后没解决
Navicat报错:1045-Access denied for user root@localhost(using password:YES)
解决方法:
密码输错了,最后清除mac系统的密码,然后重新登录连接即可
: 解决mac 忘记Mysql数据库密码方法 已写另一篇文章中
Navicat最后终于连接成功。
数据库的密码一定要记好

④ 登录数据库并进行相关操作的命令
关闭apache 服务
sudo sh /Library/Tomcat/bin/shutdown.sh
【意思就是执行一下位于根目录下面的shutdown.sh文件】
环境装好了,接下来开始跑我们的项目吧
4、MAC安装maven
在mac上装maven环境
打开官网:https://maven.apache.org/download.cgi
maven官网
MAC安装maven历史版本,去下载对应的历史版本

下载对应的压缩版本

点进去以后选择压缩版本下载

下载完成后解压到任意目录,将文件放到根目录下面
配置系统环境变量
apache-maven-3.6.0 我的maven包
打开终端输入
vim ~/.bash_profile
再输入 source .bash_profile
更新环境变量
3、配置镜像
首先,需要在配置的路径下找到apache-maven文件夹,在其中的/conf文件夹下,找到settings.xml文件,用文本编辑器打开,在给出的<mirror>镜像的样例下,配置阿里云的镜像。
<mirror><id>nexus-aliyun</id><name>Nexus aliyun</name><url>http://maven.aliyun.com/nexus/content/groups/public</url><mirrorOf>central</mirrorOf>
</mirror>
</mirror>
至此,就完成了Maven的全部配置
在IDEA之中引入和使用maven的环境

但是一直遇到一个问题,就是引入整个maven一直显示类似前端里面的依赖包找不到
于是只能 mac上在idea编辑器中配置自己下载的maven仓库
配置属于自己的tomcat服务器 ,按照步骤来即可。
无奈忘记mysql密码,Mysql密码更改一下
(1)进入mysql的根目录bin目录下
(2)命令行输入sudo su
(3)输入密码 需要输入的你自己电脑的管理员密码(开机密码),以获取管理员权限
(4)输入 ./mysqld_safe --skip-grant-tables & 跳过验证密码端口
回车以禁止mysql验证功能,mysql会自动重启,偏好设置中的mysql状态会变成running。
新打开一个窗口登录进去mysql
(5)输入命令 ./mysql 回车
(6)输入命令 flush privileges; 分号别忘记输了
(7) 重置密码:ALTER USER 'root'@'localhost' IDENTIFIED BY '12345678';
7、执行 quit 退出mysql
8、执行 exit 退出sudo
9、密码重置已完毕,可以试试登陆mysql。
mysql -u root -p
格外注意 标注mysql数据库版本,mysql8修改密码那句变成了 SET PASSWORD FOR root@localhost = 'root';
maven/gradle
🍓 mysql的使用
1)在终端使用命令以安全模式启动mysql服务:
sudo /usr/local/mysql/bin/mysqld_safe –skip-grant-tables,2)打开另一个终端 执行命令:(此时要求输入的密码为用户开机密码)
sudo /usr/local/mysql/bin/mysql -u root3)在终端执行修改密码命令重置密码:
UPDATE mysql.user SET authentication_string=PASSWORD(‘12345678’) WHERE User=’root’;,或
UPDATE mysql.user SET Password =PASSWORD(‘admin123’) WHERE User=’root’;4)刷新FLUSH PRIVILEGES:
FLUSH PRIVILEGES;5)这里可以对mysql服务进行人为启动或者暂停,也可以在终端对mysql开启或者关闭mysql服务:// 启动:
sudo /usr/local/mysql/support-files/mysql.server start
// 关闭
sudo /usr/local/mysql/support-files/mysql.server stop进入mysql数据库:
mysql -u root -p
输入自己的数据库密码:
4.1maven官网地址:
下载这个地址的maven

解压压缩包
这个时候就可以配置环境变量了
// 输入命令
vim ~/.bash_profile//打开后配置环境变量,点i为输入,复制下面两句,MAVEN_HOME,换成自己下载的路径
export MAVEN_HOME=/Users/…/apache-maven-3.6.3
export PATH=$PATH:$MAVEN_HOME/bin
//配置完毕后 esc + :wq 保存退出//输入 使配置生效
source ~/.bash_profile//测试是否成功,要先装好jdk哦
mvn -version
5、 在mac上装个后台apache-tomcat-8.5.85
一般后台环境开发需要
1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。
2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA;
3.tomcat环境:Tomcat 7.x,8.x,9.x版本均可
4.硬件环境:1G内存以上 Mac OS;
5.数据库:MySql 5.7版本;
6.是否Maven项目:否
2、 IDE环境
command + , 打开Preferences设置窗口 是IDEA中的全局设置(","是基础)
3.tomcat环境:Tomcat 7.x,8.x,9.x版本均可
❤️ mac配置 tomcat环境
第一步:下载Tomcat
下载链接:http://tomcat.apache.org/download-80.cgi

1 、下载其中的压缩文件夹:
放到 /user/local 文件夹下面
2、 我的mac下apache配置
- apache-tomcat-8.5.85
文件目录在:
/usr/local/apache-tomcat-8.5.85
3、 我们打开终端把我们的tomcat路径配置进去
输入open .bash_profile
4、配置mac的环境变量
export PATH=$PATH:/Users/xxx/Documents/work/java/apache-tomcat-8.5.85/bin
配置自己的apache-tomcat-8.5.85 文件夹到路径下面
这里特别有坑的地方
记得看好文件名字
记得mac里面的路径以:分隔开即可
最后保存只需要command+s。然后关闭即可
5、在 apache-tomcat-8.5.85 的bin 打开命令汗窗口额
输入以下命令行
startup.sh

6、测试是否成功
startup.sh就成功启动tomcat

❤️错误点1
遇到出现
permission defined
说明我们没有权限操作.sh文件
sudo chmod 755 /Users/xxx/Documents/work/java/apache-tomcat-7.0.64/bin/*.sh
最终获取打开bin目录下所有.sh的文件权限
6、Redis 安装使用
① Redis 概述
是一个key-value存储系统(官网:http://redis.io),是一个分布式缓存数据库
官网版本
https://redis.io/download/
github上windows版本
https://github.com/tporadowski/redis/releases
可以releases 下载6.2.4稳定版本的tar包
1、下载redis安装包
2、先新建一个文件夹用于存放Redis压缩包解压后的文件,新建一个文件夹为:redis-5.0.14,上面下载的安装包解压缩到一个固定目录中,例如我在E:AppDevlpredis目录下解压缩
3、添加一个环境变量,将 thereids安装目录添加到环境变量路径中
几个重要的文件
redis配置文件为:redis.windows.conf、redis.windows-service.conf
redis绑定地址以及默认端口配置都可在这两个文件中找到
4、配置环境变量
复制redis的解压路径,例如我的为:C:\Program Files\Redis\
找到【path】环境变量,新建一个环境变量值为redis的解压路径
D:\anzhuang\redis-5.0.14
下面是其中的一些具体的参数:
修改redis.windows.conf配置文件
#bind 127.0.0.1 // 指定Redis 只接收来自于该IP 地址的请求,如果不进行设置,那么将处理所有请求,在生产环境中为了安全最好设置该项。注释掉,不开启
protected-mode no //将yes改为no
port 6379 // 监听端口,默认为6379
daemonize yes // 使用yes启用守护进程,后台运行
pidfile /home/deploy/redis/redis_20002.pid // 你可以配置到其他地址。当运行多个redis 服务时,需要指定不同的pid 文件和端口
logfile "/home/deploy/redis/logs/redis.log" // 设置log输出目录
dir /home/deploy/redis/data/ // 设置数据存放的目录
requirepass 123456 // 设置redis密码
将Redis 加入 Windows 服务并启动,执行
redis-server --service-install redis.windows.conf
提示:Redis successfully installed as a service.
表示成功!
计算机管理中找到服务并启动:
使用redis-cli连接redis
redis-cli.exe -h 127.0.0.1 -p 6379
设置键值对:
set aa 1234
取出键值对:
get aa相关文章:
❤ 给自己的mac系统上安装java环境
❤ 给自己的mac系统上安装java环境 🍓 作为前端工程师如何给自己的mac系统上安装java环境 🍎 最近因为自己的一些项目需求,mac电脑上需要安装一些后台的java环境,用来跑后台的java程序,于是从一个前端工程师的角度安…...
Java-匿名类
介绍 匿名类是指没有名字的类,它对一个给定的类进行拓展,或者实现一个给定的接口。使用匿名类可以使得代码更加简洁、紧凑、模块程度更高。 实现方式及语法 匿名类有两种实现方式 继承一个类,重写其方法实现一个接口(可以是多…...
Maven的超级POM
对于我们创建的一个maven工程,即便我们自己的pom.xm文件中没有明确指定一个父工程(父POM),其实也默认继承了超级POM,就好比JAVA类继承Object类一样。 maven官网关于超级POM的介绍: https://maven.apache.o…...
软考高级系统架构设计师系列论文九十二:论新技术的引进
软考高级系统架构设计师系列论文九十二:论新技术的引进 一、摘要二、正文三、总结一、摘要 根据国家税务总局对税务系统内所有系统进行集成与整合的需求,我所在的开发单位组织了全国金税工程防伪税控系统网络版的升级开发工作。该项目工程浩大,要求在具有严格的安全、可靠性…...
vue使用Bootstrap的详细方法
要在Vue中使用Bootstrap,您可以按照以下步骤进行操作: 安装Bootstrap:首先,您需要安装Bootstrap。您可以使用npm或者yarn来安装Bootstrap。打开终端,并在项目的根目录中运行以下命令: npm install bootst…...
leetcode做题笔记103. 二叉树的锯齿形层序遍历
给你二叉树的根节点 root ,返回其节点值的 锯齿形层序遍历 。(即先从左往右,再从右往左进行下一层遍历,以此类推,层与层之间交替进行)。 思路一:BFS #define N 2000int** zigzagLevelOrder(st…...
如果将PC电脑变成web服务器:利用Nignx反向代理绕过运营商对80端口封锁
如果将PC电脑变成web服务器:利用Nignx反向代理绕过运营商对80端口封锁 在上一篇文章中,我们已经实现了内网主机的多次端口映射,将内网主机的端口映射到了公网,可以通过公网访问该主机了。 因为电信的家庭宽带,默认是…...
Eureka:服务注册-信息配置-自我保护机制
首先在提供者服务下,添加一个依赖 <!-- Eureka --><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-eureka</artifactId><version>1.4.6.RELEASE</version><…...
C++二叉树进阶
本期内容我们讲解二叉树的进阶知识,没有看过之前内容的小伙伴建议先看往期内容 二叉树-----补充_KLZUQ的博客-CSDN博客 目录 二叉搜索树 代码实现 基础框架 Insert Find Erase 析构函数 拷贝构造 赋值 二叉搜索树的应用 全部代码 二叉搜索树 二叉搜索树…...
layui tree组件取消勾选
layui(2.8.15) tree的api中,只有 tree.setChecked(id, idArr) 方法,没有取消勾选的方法。 我的需求是:勾选后做判断,如果不符合条件则取消勾选。 实现方法: 使用 tree的oncheck事件,在回调函数中做判断&…...
【Android基础面试题】ViewPager与ViewPager2的区别
ViewPager和ViewPager2是Android中用于实现滑动页面切换的控件。它们的主要区别如下: 实现方式 ViewPager2的内部实现是RecyclerView,而ViewPager是通过继承自ViewGroup实现的。因此,ViewPager2的性能更高。 滑动方向 ViewPager2可以实现横向…...
springCloudGateway网关配置
1.配置跨域支持 /*** 跨域支持*/ Configuration public class CorsConfig {Beanpublic CorsWebFilter corsFilter() {CorsConfiguration config new CorsConfiguration();config.addAllowedMethod("*");config.addAllowedOrigin("*");config.addAllowedH…...
kali 2023.3新增工具
在终端模拟器中运行 sudo apt update && sudo apt full-upgrade 命令来更新其安装 Kali Linux 2023.3 发布中包含了九个新工具,分别是: Calico:云原生网络和网络安全。 cri-tools:用于Kubelet容器运行时接口的命令行界面…...
W25Q64 驱动--基于SPI2接口
前言 (1)本系列是基于STM32的项目笔记,内容涵盖了STM32各种外设的使用,由浅入深。 (2)小编使用的单片机是STM32F105RCT6,项目笔记基于小编的实际项目,但是博客中的内容适用于各种单片…...
禁用无线键盘指定按键
文章目录 前言主体 前言 睡一觉把键盘压坏了一个按键,一开机键盘就自动打出这个字母,我在想用其他按键平替这个字母即可,使用软件修改内部的映射,那么使用autoHotkey软件是十分容易做到的 主体 letter_replace.ahk 创建一个如此命名的文件,然后输入命令即可 a::b 代表平替 a…...
分数规划(二分)
链接:登录—专业IT笔试面试备考平台_牛客网 来源:牛客网 题目描述 小咪是一个土豪手办狂魔,这次他去了一家店,发现了好多好多(n个)手办,但他是一个很怪的人,每次只想买k个手办&a…...
Vue2向Vue3过度Vue3状态管理工具Pinia
目录 1. 什么是Pinia2. 手动添加Pinia到Vue项目3. Pinia基础使用4. getters实现5. action异步实现6. storeToRefs工具函数7. Pinia的调试8. Pinia持久化插件 1. 什么是Pinia Pinia 是 Vue 的专属的最新状态管理库 ,是 Vuex 状态管理工具的替代品 2. 手动添加Pinia到…...
STM32--SPI通信与W25Q64(1)
文章目录 前言SPI通信硬件电路移位过程 SPI时序起始与终止条件交换一个字节 W25Q64硬件电路框图 FLASH操作注意事项软件SPI读写W25Q64 前言 USART串口链接入口 I2C通信链接入口 SPI通信 SPI(Serial Peripheral Interface)是一种高速的、全双工、同步的串…...
版本控制工具Git常见用法
Git 是一个非常强大和灵活的版本控制工具,提供了许多命令和功能来管理代码的版本、分支、合并等。以下是一些 Git 的详细用法: 配置相关命令: 设置用户名和邮箱: git config --global user.name "Your Name" git conf…...
Multisim软件安装包分享(附安装教程)
目录 一、软件简介 二、软件下载 一、软件简介 Multisim软件是一款电路仿真和设计软件,由美国国家仪器公司(National Instruments)开发。它提供了一个交互式的图形界面,使用户能够轻松地构建和仿真电路。以下是Multisim软件的详…...
Android Wi-Fi 连接失败日志分析
1. Android wifi 关键日志总结 (1) Wi-Fi 断开 (CTRL-EVENT-DISCONNECTED reason3) 日志相关部分: 06-05 10:48:40.987 943 943 I wpa_supplicant: wlan0: CTRL-EVENT-DISCONNECTED bssid44:9b:c1:57:a8:90 reason3 locally_generated1解析: CTR…...
使用VSCode开发Django指南
使用VSCode开发Django指南 一、概述 Django 是一个高级 Python 框架,专为快速、安全和可扩展的 Web 开发而设计。Django 包含对 URL 路由、页面模板和数据处理的丰富支持。 本文将创建一个简单的 Django 应用,其中包含三个使用通用基本模板的页面。在此…...
SkyWalking 10.2.0 SWCK 配置过程
SkyWalking 10.2.0 & SWCK 配置过程 skywalking oap-server & ui 使用Docker安装在K8S集群以外,K8S集群中的微服务使用initContainer按命名空间将skywalking-java-agent注入到业务容器中。 SWCK有整套的解决方案,全安装在K8S群集中。 具体可参…...
day52 ResNet18 CBAM
在深度学习的旅程中,我们不断探索如何提升模型的性能。今天,我将分享我在 ResNet18 模型中插入 CBAM(Convolutional Block Attention Module)模块,并采用分阶段微调策略的实践过程。通过这个过程,我不仅提升…...
练习(含atoi的模拟实现,自定义类型等练习)
一、结构体大小的计算及位段 (结构体大小计算及位段 详解请看:自定义类型:结构体进阶-CSDN博客) 1.在32位系统环境,编译选项为4字节对齐,那么sizeof(A)和sizeof(B)是多少? #pragma pack(4)st…...
连锁超市冷库节能解决方案:如何实现超市降本增效
在连锁超市冷库运营中,高能耗、设备损耗快、人工管理低效等问题长期困扰企业。御控冷库节能解决方案通过智能控制化霜、按需化霜、实时监控、故障诊断、自动预警、远程控制开关六大核心技术,实现年省电费15%-60%,且不改动原有装备、安装快捷、…...
【AI学习】三、AI算法中的向量
在人工智能(AI)算法中,向量(Vector)是一种将现实世界中的数据(如图像、文本、音频等)转化为计算机可处理的数值型特征表示的工具。它是连接人类认知(如语义、视觉特征)与…...
【Zephyr 系列 10】实战项目:打造一个蓝牙传感器终端 + 网关系统(完整架构与全栈实现)
🧠关键词:Zephyr、BLE、终端、网关、广播、连接、传感器、数据采集、低功耗、系统集成 📌目标读者:希望基于 Zephyr 构建 BLE 系统架构、实现终端与网关协作、具备产品交付能力的开发者 📊篇幅字数:约 5200 字 ✨ 项目总览 在物联网实际项目中,**“终端 + 网关”**是…...
ardupilot 开发环境eclipse 中import 缺少C++
目录 文章目录 目录摘要1.修复过程摘要 本节主要解决ardupilot 开发环境eclipse 中import 缺少C++,无法导入ardupilot代码,会引起查看不方便的问题。如下图所示 1.修复过程 0.安装ubuntu 软件中自带的eclipse 1.打开eclipse—Help—install new software 2.在 Work with中…...
Java 二维码
Java 二维码 **技术:**谷歌 ZXing 实现 首先添加依赖 <!-- 二维码依赖 --><dependency><groupId>com.google.zxing</groupId><artifactId>core</artifactId><version>3.5.1</version></dependency><de…...
