Brew 安装 Maven

brew search maven # 使用搜索工具去搜索maven包
brew info maven #使用info查看maven包当前的信息情况,包括版本依赖描述等
brew install maven

安装过程很顺利,这时候brew就已经帮我们做好了环境变量了。很多教程在这一步后会手动去生命maven的目录情况,我看了几个教程里面的设置完全没有道理,根本链接的不是brew的安装位置。

但是对于 JDK,我使用的是在 IDEA 中安装的 "Azul Systems, Inc." - "Zulu 8.68.0.21"

所以会发生 HomeBrew 安装的 Maven 中路径与 Java 路径不匹配的情况

即在安装maven 后输入 mvn -v 不能正确显示

JDK 不匹配解决方案

使用 HomeBrew 安装的 JDK 不用设置 JAVA_HOME 也可以使用,是因为 Java 可执行命令在 /usr/bin/java 下有导致使用了 JAVA_HOME 的 Maven 找不到 JAVA_HOME 没有设置

/usr/libexec/java_home -V
Matching Java Virtual Machines (1):
1.8.0_362 (x86_64) "Azul Systems, Inc." - "Zulu 8.68.0.21" /Users/koshkaaaa/Library/Java/JavaVirtualMachines/azul-1.8.0_362/Contents/Home # 将输出的路径添加到 ~/.zshrc 中
JAVA_HOME="/Users/koshkaaaa/Library/Java/JavaVirtualMachines/azul-1.8.0_362/Contents/Home"
export JAVA_HOME
CLASS_PATH="$JAVA_HOME/lib"
PATH=".$PATH:$JAVA_HOME/bin" # 更新 zshrc
source ~/.zshrc

此时使用 mvn -v 问题得到解决

配置 Maven

可以看到 brew 自动帮我装好了x86版本的maven。如果是m1的芯片,会帮你装m1版本,路径位置可能不同,但设置没啥区别,注意换成自己路径即可。我们接下来看maven的配置文件位置。

上面maven信息输出中有Maven home: /usr/local/Cellar/maven/3.9.1/libexec,冒号后面就是brew帮我们下载的安装目录。直接执行cd Maven home: /usr/local/Cellar/maven/3.9.1/libexec,进入目录。

cd /usr/local/Cellar/maven/3.9.1/libexec
ls
bin boot conf lib
cd conf
ls
logging settings.xml toolchains.xml
# 看到了熟悉的 setting 文件

在xml文件中,我们要关注两个地方,我在下面列了出来localRepositorymirrors。第一个localRepository是你本地仓库所在的位置,你的包都会下载到这里,默认在你用户目录的.m2目录下,我觉得挺直观的,就没修改了,这里可以换成你想存放的地址。第二个mirror是你的包下载地址,因为有墙,所以建议增加阿里云仓库配置,来加速下载。具体配置如下,可以自己在xml中寻找。

<mirrors>
<!-- mirror
| Specifies a repository mirror site to use instead of a given repository. The repository that
| this mirror serves has an ID that matches the mirrorOf element of this mirror. IDs are used
| for inheritance and direct lookup purposes, and must be unique across the set of mirrors.
|
<mirror>
<id>mirrorId</id>
<mirrorOf>repositoryId</mirrorOf>
<name>Human Readable Name for this Mirror.</name>
<url>http://my.repository.com/repo/path</url>
</mirror>
-->
<mirror>
<id>maven-default-http-blocker</id>
<mirrorOf>external:http:*</mirrorOf>
<name>Pseudo repository to mirror external repositories initially using HTTP.</name>
<url>http://0.0.0.0/</url>
<blocked>true</blocked>
</mirror>
<mirror>
<id>aliyunmaven</id>
<mirrorOf>*</mirrorOf>
<name>阿里云公共仓库</name>
<url>https://maven.aliyun.com/repository/public</url>
</mirror> </mirrors>

到这里,我们的maven已经安装完毕。仓库位置在我们本地用户目录下的.m2中,maven安装位置为之前的maven home。我们开始为IDEA配置本地maven环境。

IDEA 的 Maven 配置

我们打开idea的偏好设置,搜索maven,出现以下的配置界面。

我们将安装目录和配置目录替换成配置maven时确定的路径,不好通过访达选文件就直接把路径复制填上去,应用保存即可。

HomeBrew 安装 Maven 及其 IDEA 配置的更多相关文章

  1. Ubuntu上安装Maven Eclipse以及配置

    通过官方网站  http://maven.apache.org/download.cgi     下载到当前的maven安装包 ubuntu解压安装文件我用的是ubuntu 12.10版本的命令:  ...

  2. 安装maven,并配置eclipse

    平台 ubuntu 18.04 + Java 8 下载并安装Maven 下载页面:http://maven.apache.org/download.cgi 我这里使用写博客是最新的版本3.6.1,选择 ...

  3. Eclipse 安装Maven以及Eclipse配置Maven

    安装Maven 1 下载 Downloading Apache Maven 3.5.0 选择 2 解压 3 配置环境变量 新建变量名:MAVEN_HOME  变量值:D:\SoftwareInstal ...

  4. Mac下通过homebrew安装maven

    1.安装Homebrew 将以下命令粘贴至终端 /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebr ...

  5. Centos7安装maven详情以及配置

    一.maven安装: 1.获取maven下载地址: 查询maven最新版本地址:https://maven.apache.org/download.cgi 当前最新版本为maven 3.6.3    ...

  6. Mac下JDK、Maven、Tomcat、Git开发安装及环境变量配置

    本文主要内容: - 1.Mac OS 10.11.6 [OS X EL Captain] - 2.Mac OS 安装Java 设置环境变量 - 3.Mac OS 安装Maven设置环境变量 - 4.M ...

  7. Maven学习(一) -- 安装Maven及Eclipse中配置Maven

    标签(空格分隔): 学习笔记 本文环境:Windows7, JDK1.7.0_76 安装及配置Maven环境变量 需要电脑中已经有Java环境 在控制台中输入:echo %JAVA_HOME%看是否能 ...

  8. Mac OSX 下用 Homebrew 安装 MongoDB 并配置到 WebStorm 中

    1. 安装 Ruby OSX 操作系统内置 Ruby,但如果没有 Ruby,则需先输入以下命令安装能够进行多版本ruby环境安装.管理和切换的命令行工具 RVM. 1.1 安装 RVM 打开终端输入以 ...

  9. maven的安装,maven库配置和Eclipse插件的安装

    maven的安装,maven库配置和Eclipse插件的安装 1.下载并解压maven 2.配置环境变量 3.配置maven配置文件 1.下载链接 Downloading Apache Maven 2 ...

  10. maven安装和环境变量配置

    maven安装和环境变量配置 myeclipse自带maven(Maven4MyEclipse)创建项目:新建Web Projects项目,在新建的页面上打上maven的勾.新建的项目里会多出个pom ...

随机推荐

  1. [GitOps] 白嫖神器Github Actions,构建、推送Docker镜像一路畅通无阻

    [GitOps] 白嫖神器Github Actions,构建.推送Docker镜像一路畅通无阻 引言   当你没找到合适的基础的Docker镜像时,是否会一时冲动,想去自己构建.然而因为网络问题,各种 ...

  2. 基于OpenAi通用特定领域的智能语音小助手

    无穷尽的Q&A 钉钉...钉钉... 双双同学刚到工位,报销答疑群的消息就万马纷沓而来.她只能咧嘴无奈的摇摇头.水都还没有喝一口就开始"人工智能"的去回复.原本很阳光心情开 ...

  3. Postgres 和 MySQL 应该怎么选?

    PostgreSQL和MySQL是两个流行的关系型数据库管理系统(DBMS).它们都具有一些相似的功能,但也有一些区别. 在选择使用哪个DBMS时,需要考虑多个因素,包括性能.可扩展性.安全性.功能丰 ...

  4. Python 实现Word转HTML

    将Word转换为HTML能将文档内容发布在网页上,这样,用户就可以通过浏览器直接查看或阅读文档而无需安装特定的软件.Word转HTML对于在线发布信息.创建在线文档库以及构建交互式网页应用程序都非常有 ...

  5. Linux笔记03: Linux常用命令_3.5权限管理命令

    3.5 权限管理命令 3.5.1 权限介绍 1.为什么需要权限 绝大多数用户使用的是个人计算机,而使用个人计算机的用户一般都是被信任的用户(如家人.朋友等).在这种情况下,大家都可以使用管理员身份直接 ...

  6. Tensorflow2.0使用Resnet18进行数据训练

    在今年的3月7号,谷歌在 Tensorflow Developer Summit 2019 大会上发布 TensorFlow 2.0 Alpha 版,随后又发布了Beta版本. Resnet18结构 ...

  7. 【UniApp】-uni-app-数据传递补充

    前言 好,经过上个章节的介绍完毕之后,了解了一下 uni-app-CompositionAPI传递数据 那么了解完了uni-app-CompositionAPI传递数据之后,这篇文章来给大家介绍一下 ...

  8. 最好用的AI换脸软件,rope下载介绍

    随着AI技术的广泛运用,市面上的换脸软件也多了起来,今天给各位介绍其中的王者Rope! 先上两个动图,给大伙看看效果 rope是如何实现这种自然的效果呢?这得益于机器学习技术的不断发展,rope经过深 ...

  9. 51Nod - 1086 多重背包

    有N种物品,每种物品的数量为C1,C2......Cn.从中任选若干件放在容量为W的背包里,每种物品的体积为W1,W2......Wn(Wi为整数),与之相对应的价值为P1,P2......Pn(Pi ...

  10. 组合式api-跨层级组件通信provide和inject

    vue2的provide和inject:https://v2.cn.vuejs.org/v2/api/#provide-inject 主要作用: 跨层级传递数据(响应和非相应数据都可以).方法(函数) ...