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 及其第二次启动报错问题解决的更多相关文章

  1. maven web 项目中启动报错 Java.lang.ClassNotFoundException: org.springframework.web.servlet.DispatcherServlet

    主要原因是maven项目里面的jar包吗,没有导入到项目中 maven web 项目中启动报错 Java.lang.ClassNotFoundException: org.springframewor ...

  2. maven项目使用tomcat启动报错:Server Tomcat v8.5 Server at localhost failed to start

    背景说明:1)该项目为maven项目,使用的maven的本地仓库里有不少之前使用过下载的jar包: 2)从svn下载该项目后,无报错情况: 3)部署到tomcat启动报错 如下 : 4)在网上搜索了很 ...

  3. 进击的java - tomcat的安装,配置都正确之后,还是报错

    1.问题 配置Apatch Tomcat过程报错: The CATALINA_HOME environment variable is not defined correctly.This envir ...

  4. 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 错误描述 ...

  5. 利用Maven管理工程项目本地启动报错及解决方案

    目前利用Maven工具来构建自己的项目已比较常见.今天主要不是介绍Maven工具,而是当你本地启动这样的服务时,如果遇到报错,该如何解决?下面只是参考的解决方案,具体的解法还是得看log的信息. 1. ...

  6. Eclipse导入Maven项目,使用server 启动报错,class 找不到,

    问题发现: 1.导入maven 项目后,用server 启动,选择项中没有这个项目 解决: 说明server 没有把该项目当成web项目,需要设置 项目右键 properties  ---- proj ...

  7. idea maven cannot resolve symbol http报错问题解决

    学习SpringMVC的过程中,在idea中使用maven管理依赖.在class中使用 javax.servlet.http.HttpServletRequest的时候,报错:cannot resol ...

  8. 初次安装hive-2.1.0启动报错问题解决方法

    首次安装hive-2.1.0,通过bin/hive登录hive shell命令行,报错如下: [hadoop@db03 hive-2.1.0]$ bin/hive which: no hbase in ...

  9. maven项目在eclipse启动报错:java.lang.ClassNotFoundException

    问题: 用eclipse创建maven项目的时候,pom.xml中相关的依赖jar已经导入进去,还会报java.lang.ClassNotFoundException的错误,提示找不到相关的jar包, ...

随机推荐

  1. c++ struct enum union加typedef与不加typedef

    struct/enum/union加typedef与不加typedef 匿名结构体 struct { int a; int b; } v; // 这里表示定义了一个结构体的变量v,且结构体类型没有名字 ...

  2. 什么,有狗快跑!慢着,这次手把手教你怎么过安全狗!(sql注入篇)

    前言 在记忆里上次绕安全狗还是在上次,开开心心把自己之前绕过狗的payload拿出来,发现全部被拦截了,事情一下子就严肃起来了,这就开整. 环境 本次环境如下sqli-lab的sql注入靶场 网站安全 ...

  3. 入门pwn的练习

    都是比较简单的一些pwn的题目,也是团队里面的一个人发着做的,因为是初学,所以就还是先从简单的向难得方向去发展. 第一个 先用checksec或者die检测一下, 然后拖入到IDA,shift+f12 ...

  4. m0n0wall安装教程

    m0n0wall的镜像链接:https://pan.baidu.com/s/1soIw7cS1Tv180fbo2655UA 提取码:dpon 一.新建虚拟机 新建虚拟机我想大家都会,详细步骤我就不陈述 ...

  5. kali linux开启ssh

    虚拟机中安装好Kali linux 2.0,如何从windows中通过SecureCRT.putty或XShell等工具远程到Kali中. [GeeK]出诊过程如下: 1.首先在window10中te ...

  6. 还在用excel做分析?你已经out了!

    Excel 是个很有趣的工具,不管你是不是数据分析领域的打工人,都一定听过它的名字,甚至在全球拥有大量虔诚的粉丝.Excel这个名字其实源自英语中的" Excellence "一词 ...

  7. C#TaskScheduler 任务调度器的原理

    什么是TaskScheduler? SynchronizationContext是对"调度程序(scheduler)"的通用抽象.个别框架会有自己的抽象调度程序,比如System. ...

  8. .net框架的详解

    .net运行时 :Core,Xamarin,Mono或Framework? Core:面向所有平台 window .liniux .苹果mac .net Framework4.8:面向微软系统  已经 ...

  9. md5非对称密钥

    一.MD5加密概述 Message Digest Algorithm MD5(中文名为消息摘要算法第五版)为计算机安全领域广泛使用的一种散列函数,用以提供消息的完整性保护.该算法的文件号为RFC 13 ...

  10. 在win10操作系统中pycharm启动时无法打开的解决方法

    ''' 当打开pycharm时报错 Error launching Pycharm Failed to load JVM DLL C:\Program Files\Jetbrains\Pycharm ...