❤ 给自己的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软件的详…...

【OSG学习笔记】Day 18: 碰撞检测与物理交互
物理引擎(Physics Engine) 物理引擎 是一种通过计算机模拟物理规律(如力学、碰撞、重力、流体动力学等)的软件工具或库。 它的核心目标是在虚拟环境中逼真地模拟物体的运动和交互,广泛应用于 游戏开发、动画制作、虚…...
【Web 进阶篇】优雅的接口设计:统一响应、全局异常处理与参数校验
系列回顾: 在上一篇中,我们成功地为应用集成了数据库,并使用 Spring Data JPA 实现了基本的 CRUD API。我们的应用现在能“记忆”数据了!但是,如果你仔细审视那些 API,会发现它们还很“粗糙”:有…...
React---day11
14.4 react-redux第三方库 提供connect、thunk之类的函数 以获取一个banner数据为例子 store: 我们在使用异步的时候理应是要使用中间件的,但是configureStore 已经自动集成了 redux-thunk,注意action里面要返回函数 import { configureS…...

无人机侦测与反制技术的进展与应用
国家电网无人机侦测与反制技术的进展与应用 引言 随着无人机(无人驾驶飞行器,UAV)技术的快速发展,其在商业、娱乐和军事领域的广泛应用带来了新的安全挑战。特别是对于关键基础设施如电力系统,无人机的“黑飞”&…...

论文阅读:Matting by Generation
今天介绍一篇关于 matting 抠图的文章,抠图也算是计算机视觉里面非常经典的一个任务了。从早期的经典算法到如今的深度学习算法,已经有很多的工作和这个任务相关。这两年 diffusion 模型很火,大家又开始用 diffusion 模型做各种 CV 任务了&am…...

从零开始了解数据采集(二十八)——制造业数字孪生
近年来,我国的工业领域正经历一场前所未有的数字化变革,从“双碳目标”到工业互联网平台的推广,国家政策和市场需求共同推动了制造业的升级。在这场变革中,数字孪生技术成为备受关注的关键工具,它不仅让企业“看见”设…...
数据库正常,但后端收不到数据原因及解决
从代码和日志来看,后端SQL查询确实返回了数据,但最终user对象却为null。这表明查询结果没有正确映射到User对象上。 在前后端分离,并且ai辅助开发的时候,很容易出现前后端变量名不一致情况,还不报错,只是单…...
字符串哈希+KMP
P10468 兔子与兔子 #include<bits/stdc.h> using namespace std; typedef unsigned long long ull; const int N 1000010; ull a[N], pw[N]; int n; ull gethash(int l, int r){return a[r] - a[l - 1] * pw[r - l 1]; } signed main(){ios::sync_with_stdio(false), …...
手动给中文分词和 直接用神经网络RNN做有什么区别
手动分词和基于神经网络(如 RNN)的自动分词在原理、实现方式和效果上有显著差异,以下是核心对比: 1. 实现原理对比 对比维度手动分词(规则 / 词典驱动)神经网络 RNN 分词(数据驱动)…...

高保真组件库:开关
一:制作关状态 拖入一个矩形作为关闭的底色:44 x 22,填充灰色CCCCCC,圆角23,边框宽度0,文本为”关“,右对齐,边距2,2,6,2,文本颜色白色FFFFFF。 拖拽一个椭圆,尺寸18 x 18,边框为0。3. 全选转为动态面板状态1命名为”关“。 二:制作开状态 复制关状态并命名为”开…...