Mac安装和配置Maven 及其第二次启动报错问题解决
1、下载安装
下载地址: https://maven.apache.org/download.cgi

下载后解压下来重名名为ApacheMaven,并放入到/usr/local/下


2、配置环境变量
打开终端,输入命令:
vi ~/.bash_profile
如果没有该文件,就输入命令touch ~/.bash_profile ,再输入上面的命令。
打开.bash_profile之后,按下i键,使其进入编辑状态。然后输入下面命令来配置环境变量(下面的M,你可以自己命名):
export M="/usr/local/ApacheMaven"
export PATH="$M/bin:$PATH"
按下esc,退出编辑状态,输入:wq,退出文件。
在终端执行生效命令:
source ~/.bash_profile
然后执行命令:
mvn -v
如果正常显示maven的版本等信息,如下图,表示配置成功。如果没有,检查路径是否正确,或者版本号名称等。

二.Mac zsh: command not found:mvn
zsh 下找不到 mvn 命令
如果已经配置了maven,但是每次在终端执行 mvn 命令的时候,都必须要执行下 source ~/.bash_profile 才能生效。
这是因为当 Mac 上安装了 zsh 后,.bash_profile 文件的配置无法生效。解决方案是:
vi ~/.zshrc
在文件的末尾添加下面的命令:
source ~/.bash_profile
这样,当 zsh 启动的时候,会读取 .bash_profile 文件的内容并使之生效。
zsh下配置maven环境变量
Mac上有3处可以设置环境变量:
/etc/profile :系统全局变量,系统启动即加载该文件的配置(不建议添加)
/etc/bashrc:所有类型的bash shell 都会读取该文件的配置
~/.bash_profile:配置用户级环境变量,在系统用户文件夹下创建,当用户登录时,该文件会被执行且仅执行一次
下面是我的 .bash_profile 文件的内容:
export PATH=/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin
export PATH=${PATH}:/usr/local/mysql/bin
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_131.jdk/Contents/Home/
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:/usr/local/maven/apache-maven-3.5.0/bin
export CATALINA_HOME=/usr/local/tomcat/apache-tomcat-7.0.77
export PATH=$PATH:/CATALINA_HOME/bin
alias ll='ls -alF'
alias la='ls -A'
alias l='ls -CF'
路径的结尾一定不要加上/
配置完成后,查看一下是否已经添加:
系统的ls等命令提示找不到
在配置的过程中,可能会出现 ls,vi 等基础命令不可用的情况,可以执行下面的命令:
PATH=/bin:/usr/bin:/usr/local/bin:${PATH}
export PATH
或
exec /bin/zsh
或
exec /usr/bin/zsh
参考:https://www.jiloc.com/43492.html
————————————————
原文链接:https://blog.csdn.net/u010473656/article/details/88847282
Mac安装和配置Maven 及其第二次启动报错问题解决的更多相关文章
- maven web 项目中启动报错 Java.lang.ClassNotFoundException: org.springframework.web.servlet.DispatcherServlet
主要原因是maven项目里面的jar包吗,没有导入到项目中 maven web 项目中启动报错 Java.lang.ClassNotFoundException: org.springframewor ...
- maven项目使用tomcat启动报错:Server Tomcat v8.5 Server at localhost failed to start
背景说明:1)该项目为maven项目,使用的maven的本地仓库里有不少之前使用过下载的jar包: 2)从svn下载该项目后,无报错情况: 3)部署到tomcat启动报错 如下 : 4)在网上搜索了很 ...
- 进击的java - tomcat的安装,配置都正确之后,还是报错
1.问题 配置Apatch Tomcat过程报错: The CATALINA_HOME environment variable is not defined correctly.This envir ...
- maven web 项目中启动报错java.lang.ClassNotFoundException: org.springframework.web.util.Log4jConfigListener
环境:Groovy/Grails Tool Suite 3.1.0.RELEASE(BASED ON ECLIPSE JUNO 3.8.1).JDK1.6.Maven3.05.Tomcat6 错误描述 ...
- 利用Maven管理工程项目本地启动报错及解决方案
目前利用Maven工具来构建自己的项目已比较常见.今天主要不是介绍Maven工具,而是当你本地启动这样的服务时,如果遇到报错,该如何解决?下面只是参考的解决方案,具体的解法还是得看log的信息. 1. ...
- Eclipse导入Maven项目,使用server 启动报错,class 找不到,
问题发现: 1.导入maven 项目后,用server 启动,选择项中没有这个项目 解决: 说明server 没有把该项目当成web项目,需要设置 项目右键 properties ---- proj ...
- idea maven cannot resolve symbol http报错问题解决
学习SpringMVC的过程中,在idea中使用maven管理依赖.在class中使用 javax.servlet.http.HttpServletRequest的时候,报错:cannot resol ...
- 初次安装hive-2.1.0启动报错问题解决方法
首次安装hive-2.1.0,通过bin/hive登录hive shell命令行,报错如下: [hadoop@db03 hive-2.1.0]$ bin/hive which: no hbase in ...
- maven项目在eclipse启动报错:java.lang.ClassNotFoundException
问题: 用eclipse创建maven项目的时候,pom.xml中相关的依赖jar已经导入进去,还会报java.lang.ClassNotFoundException的错误,提示找不到相关的jar包, ...
随机推荐
- linux大工程 - 我要一个属于自己的回收站
我要开始装13了 'rm -rf 是一个很"粗鲁"的命令,就像windows的shift+delete,删除的文件是无法找回的(当然,除了数据恢复软件,但是很麻烦,很费时)' '为 ...
- iptTable规范
规范之HTML 先在当前页面放入几个表格设置按钮的html(样式可能需重新调整) <div class="bottom_nav1 ta_l" style="padd ...
- 树莓派安装docker并使用docker图形化工具portainer
配置环境 系统:Raspbian 11(64位) 设备:树莓派4B 一.安装docker 1.安装 curl -fsSL https://get.docker.com -o get-docker.sh ...
- 操作系统实验一:进程管理(含成功运行C语言源代码)
目录 操作系统实验一:进程管理 1.实验目的 2.实验内容 3.实验准备 3.1.1进程的含义 3.1.2进程的状态 3.1.3进程状态之间的转换 3.2 进程控制块PCB 3.2.1进程控制块的作用 ...
- Elasticsearch 第九篇:集群配置与搭建
h2.post_title { background-color: rgba(43, 102, 149, 1); color: rgba(255, 255, 255, 1); font-size: 1 ...
- 什么是闭包?(python)
闭包,又称闭包函数或闭合函数,和嵌套函数类似.不同之处在于,闭包函数的外部函数返回的不是一个具体的值,而是一个函数.一般情况下,返回的函数会赋值给一个变量,便于反复调用. def outer(out) ...
- Windows原理深入学习系列-访问控制列表
这是[信安成长计划]的第 19 篇文章 0x00 目录 0x01 介绍 0x02 DACL 0x03 创建DACL 0x04 文件读取测试 0x05 进程注入测试 0x06 原理分析 Win10_x6 ...
- [iptables] 基于iptables实现的跨网络通信
描述 在很多业务场景下,会遇上很多诡异的需求,不仅限于文章提及的需求,还有各种五花八门的需求,大部份的这些需求的产生都是来源于以前设计.规划上导致的问题.所以我们都会想尽办法为客户解决问题,维护好客户 ...
- 45个 GIT 经典操作场景,专治不会合代码
大家好,我是小富~ 技术交流关注公众号:程序员内点事 传送门:原文地址 git对于大家应该都不太陌生,熟练使用git已经成为程序员的一项基本技能,尽管在工作中有诸如 Sourcetree这样牛X的客户 ...
- 渗透测试中dns log的使用
转至:https://www.cnblogs.com/rnss/p/11320305.html 一.预备知识 dns(域名解析): 域名解析是把域名指向网站空间IP,让人们通过注册的域名可以方便地访问 ...