MAC系统安装PHP、Java、Python、mysql、Composer等环境无权限问题的详细操作方法说明。

news2024/11/29 2:28:22

本篇文章主要讲解MAC系统安装PHP、Java、Python、mysql、Composer等环境无权限问题的详细操作方法说明。通过本篇文章你可以快速掌握brew安装相对应环境的能力。
作者:任聪聪
日期:2024年4月12日

一、brew介绍及安装说明

官网地址:https://brew.sh/

什么是brew?

全称:Homebrew,是一款mac及uninx系统下的软件安装和管理工具,通过他你可以快速安装和部署相应的环境及编程sdk,此后你只需要通过brew 的管理命令即可完成对不同环境的切换和更新、删除。

使用brew安装环境的优点说明:

1.通过brew 进行安装和管理环境,会让你的mac笔记本更加的方便和快捷。
2.避免自己手动安装导致的权限不足及权限授权问题。
3.无需手动配置环境变量,brew安装完毕即可生效环境变量,后续执行brew link命令即可快速切换系统编程环境。

安装BREW操作说明

步骤一、打开我们的官网,并复制安装命令,如下图:

在这里插入图片描述

步骤二、按下mac系统的聚焦搜索快捷键,并打开终端,如下图:

在这里插入图片描述

步骤三、复制BREW的安装命令。

在这里插入图片描述
安装完毕后进入下一环节~

二、brew的使用及常见命令说明

1.查询已经安装的软件

命令:brew list
在这里插入图片描述

2.查询要安装的软件包版本列表

命令:brew search php
在这里插入图片描述

4. 安装指定的软件包版本

命令:brew install php@8.0
在这里插入图片描述

5. 切换某个版本的环境变量联系

取消当前关联的版本命令:brew unlink php@8.0
关联我想关联的版本命令:brew link php@8.3
link命令后面的是brew list 命令查询的安装应用包名的版本信息。

三、安装所需环境的说明

3.1 安装php

搜索php包:brew search php
在这里插入图片描述
安装php8.0:brew install php@8.0
在这里插入图片描述
安装php8.3:brew install php@8.3
在这里插入图片描述
验证php安装结果:php -v
在这里插入图片描述

3.2安装mysql

搜索mysql包:brew search mysql
在这里插入图片描述
安装指定版本mysql:brew install mysql@8.0
验证mysql安装结果:mysql --version
在这里插入图片描述
使用mysql登录:mysql -u -root -p
在这里插入图片描述

3.3 安装composer

搜索composer包:brew search composer
在这里插入图片描述
执行安装命令:brew install composer
完成后,验证composer安装结果:composer --verison
在这里插入图片描述

3.4 安装java

搜索java包:brew search openjdk
在这里插入图片描述
安装指定版本的sdk:brew install openjdk@11
完成后即可通过java --version进行验证。
在这里插入图片描述

3.5 安装maven

搜索maven包:brew search maven
安装maven:brew install maven在这里插入图片描述
验证maven安装结果:
在这里插入图片描述

3.6 安装pyhton

搜索python软件包:brew search python
在这里插入图片描述
选择一个版本进行安装:brew install python@3.10
验证安装结果:python3
在这里插入图片描述
安装多个版本的情况:
在这里插入图片描述

四、 其他安装包安装说明

1.brew 安装方法,先搜索对应名称如node即搜素node即可看到node的有效版本,然后执行安装命令即可完成安装。

2.对于安装多个版本的情况,请使用link命令进行切换管理。

3.验证其他包的方法也与上述的环境一致,按照编程语言的版本命令即可获取,详细如下:
在这里插入图片描述

五、常见问题解答

1.link命令执行后不生效问题。

说明:如果你安装了多个版本,没有进行unlink旧包,那么link新包是无效果的。

2.安装完毕的jdk如何在idea中使用?

说明:安装完毕的jdk会实时在idea中显示,无需自己添加。
在这里插入图片描述

3.安装的python版本如何在pycharm中调用?

说明:实时加载的,创建新项目时就可以直接选择。
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1599091.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

分布式数据库Polardb-X架构及特点

PolarDB-X架构 计算节点(Compute Node,CN)是系统的入口,采用无状态设计的sql引擎提供分布式路由和计算,包括SQL解析器、优化器、执行器等模块。负责数据分布式路由、计算及动态调度,负责分布式事务2PC协调…

VLAN Mapping原理描述

基本原理 路由器收到带Tag的数据报文后,根据配置的VLAN Mapping方式,决定替换外层Tag中的VLAN ID或优先级;然后进入MAC地址学习阶段,根据源MAC地址映射后的VLAN ID刷新MAC地址表项;根据目的MAC映射后VLAN ID查找MAC地…

【电控笔记2.3】速度回路+系统延迟

2.3.1速度回路pi控制器设计 pi伯德图近似设计(不考虑延时理想情况下) Tl:负载转矩 PI控制器的转折频率:Ki/Kp

用海豚调度器定时调度从Kafka到HDFS的kettle任务脚本

在实际项目中,从Kafka到HDFS的数据是每天自动生成一个文件,按日期区分。而且Kafka在不断生产数据,因此看看kettle是不是需要时刻运行?能不能按照每日自动生成数据文件? 为了测试实际项目中的海豚定时调度从Kafka到HDF…

Django中的定时任务与后台任务队列的实践【第164篇—Django】

👽发现宝藏 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。【点击进入巨牛的人工智能学习网站】。 在Web开发中,处理定时任务和后台任务队列是很常见的需求。Django作为一个功能强…

隐私保护?还是安全漏洞?邮箱分身双重身份及创建攻略解析!

很多人只知道微信、QQ等应用分身,对于邮箱分身并不是很了解。邮箱分身和他们的不同点在于我们直接在原有邮箱的基础上创立新的虚拟邮箱地址,并且密码一致,在我们需要运营多个社交媒体账号或者管理多个项目的情况下,邮箱分身是一个…

为什么物联网安全性引发了对身份盗窃的担忧?

物联网是连接互联网的设备和传感器的统称,它代表了一个新的技术时代。这种硬件利用了连接性、硬件、小型化、云计算、数据处理、集成等方面的进步,为消费者和企业带来了好处,同样的物联网方面的威胁也是不断的在增加。 物联网是连接互联网的设…

【面试经典 150 | 链表】分隔链表

文章目录 写在前面Tag题目来源解题思路方法一:模拟 写在最后 写在前面 本专栏专注于分析与讲解【面试经典150】算法,两到三天更新一篇文章,欢迎催更…… 专栏内容以分析题目为主,并附带一些对于本题涉及到的数据结构等内容进行回顾…

leetcode代码记录(全排列 II

目录 1. 题目:2. 我的代码:小结: 1. 题目: 给定一个可包含重复数字的序列 nums ,按任意顺序 返回所有不重复的全排列。 示例 1: 输入:nums [1,1,2] 输出: [[1,1,2], [1,2,1], [2,1…

C++ | Leetcode C++题解之第32题最长有效括号

题目&#xff1a; 题解&#xff1a; class Solution { public:int longestValidParentheses(string s) {int left 0, right 0, maxlength 0;for (int i 0; i < s.length(); i) {if (s[i] () {left;} else {right;}if (left right) {maxlength max(maxlength, 2 * ri…

基于SSM的购物小程序01

4.1系统架构设计 购物系统设计的系统项目的概述设计分析&#xff0c;主要内容有学习平台的具体分析&#xff0c;进行数据库的是设计&#xff0c;数据采用mysql数据库&#xff0c;并且对于系统的设计采用比较人性化的操作设计&#xff0c;对于系统出现的错误信息可以及时做出处…

GEE APP——土壤水分资源管理器

摘要 由于土壤水分含量与地球气候和天气以及干旱、洪水或山体滑坡等现象有关,因此对许多科学和专业用户来说都非常宝贵。遥感技术为连续测量这一变量提供了独特的可能性。特别是在农业领域,对高空间分辨率绘图的需求非常强烈。然而,目前可操作的土壤水分产品只有中粗空间分…

Udio——革命性的AI音乐生成软件

Udio是一款革命性的AI音乐生成软件&#xff0c;由前谷歌DeepMind的顶尖AI研究人员和工程师共同创立&#xff0c;得到著名风险投资公司a16z的支持。它旨在为音乐爱好者和专业人士提供一个全新的音乐创作和分享平台。用户可以通过文本提示来生成音乐&#xff0c;支持广泛的音乐风…

HashMap的扩容看这一篇足够

在Java中&#xff0c;对于HashMap这样的实现&#xff0c;put方法是用来将一个键值对插入到Map中的核心方法。以下是HashMap类中put方法的大致执行流程&#xff1a; 计算Hash值&#xff1a; 首先&#xff0c;put方法会接收一个键&#xff08;Key&#xff09;和一个值&#xff0…

第四百六十二回

文章目录 1. 概念介绍2. 实现方法3. 示例代码4. 内容总结 我们在上一章回中介绍了"关于MediaQuery的优化"相关的内容&#xff0c;本章回中将介绍readMore这个三方包.闲话休提&#xff0c;让我们一起Talk Flutter吧。 1. 概念介绍 我们在本章回中介绍的readMore是一个…

大模型的自我监督

大家好啊&#xff0c;我是董董灿。 之前有小伙伴私信我&#xff0c;想了解下大模型比如 chatGPT 是如何进行训练的。 和他们聊了一下&#xff0c;发现有一个点一直困惑着大家&#xff0c;那就是&#xff1a;大模型的训练是无监督学习还是有监督学习&#xff1f;在大模型训练过…

【学习笔记十三】EWM常见上架策略介绍

一、手工维护上架策略 系统不确定Storage type 和 bin&#xff0c;需要在创建仓库任务时或者确认仓库任务时手工输入仓位 1.后台配置-定义存储类型的类型0010 ①存储行为&#xff1a;标准仓位 ②入库规则&#xff1a;空仓未或添加至现有库存/空仓位 ③通用仓库任务&#x…

sky08、09笔记常用组合逻辑电路

本节的目的是为了更好的预估delay。 1.1bit全加器 module fadd_1b( a, b, cin, s, cout ); input wire a,b,cin; output wire s,cout;wire p,g; assign p a|b;//propagate carry assign g a&b;//generate carry assign s a^b^cin; assign cout (p&cin)|g; endmodu…

Vue3实现pdf本地预览功能

一、先直接看看效果吧 放大后 缩小后 也可以分页显示 二、选用vue-pdf-embed和vue3-pdfjs的原因 选用这两个的插件是因为如果实现pdf预览其实使用iframe标签就可以的&#xff0c;但是使用iframe标签实现的比较臭&#xff0c;vue-pdf-embed是能够自定义样式的&#xff0c;更…

本地做好准备上传到Git分支,发现git上已经更新了,上传到dev分支

git add . git commit -m 备注 git pull --rebase origin dev 拉取dev上的代码合并到本地 git push -u origin dev推到远程dev上&#xff08;注意着可能不是最后一步&#xff0c;先看完&#xff09; 如果报错&#xff0c;意思是本地没有dev分支&#xff0c;没办法上传到git上…