Mac系统下配置环境变量:Javajdk、maven、tomcat 环境变量配置及对应配置文件

文章目录

  • 前言
  • 一、配置环境变量路径问题
    • 1、macOS 下环境变量的配置文件
    • 2、解决环境变量在 zsh shell 无效的问题
    • 3、查看 macOS 全部环境变量
    • 4、设置系统环境变量
  • 二、JDK下载&配置环境变量
    • 1、下载
    • 2、配置环境变量
    • 3、测试
  • 三、maven下载&配置环境变量
    • 1、下载
    • 2、环境变量
    • 3、测试
    • 4、报错啦
  • 四、tomcat下载&配置环境变量(暂无)

前言

离职回到学校,电脑是赎买的公司Mac。什么都没有,所以需要重新下载和配置环境变量,就来写这篇文章啦。

一、配置环境变量路径问题

1、macOS 下环境变量的配置文件

/etc/paths 
/etc/profile 
~/.bash_profile
~/.bash_login
~/.profile
~/.bashrc
  • /etc/profile/etc/paths 是系统级别的配置文件,后面几个是用户级的配置文件。

  • 文件加载顺序:
    系统启动时会按上面罗列的配置文件从上到下的顺序加载。但是,如果 ~/.bash_profile 文件存在,那么 ~/.bash_login~/.profile~/.bashrc 会被忽略,如果不存在 ~/.bash_profile 文件,才会按顺序读取后面的文件。另外,~/.bashrc 文件又比较特殊,这个文件是在 bash shell 打开时才加载的,并不是系统启动后就加载的。

2、解决环境变量在 zsh shell 无效的问题

  • Shell、Bash、Zsh这都是啥啊:https://blog.csdn.net/u011291072/article/details/122782942
  • zsh与bash区别:https://blog.csdn.net/qq_40520596/article/details/104642218

以上的配置文件在 bash shell 环境下才有效,在 zsh shell 环境下无效。如果希望在 zsh shell 下可以使用上述配置文件中的环境变量,可以在 ~/.zshenv 或者 ~/.zshrc 文件中添加下面的命令语句:

source /etc/profile 
source ~/.bash_profile

打开 zsh shell 时会顺序加载 ~/.zshenv~/.zshrc 文件,添加上面两条命令语句,则表示加载 ~/.zshenv~/.zshrc 时会去调用外部脚本文件 /etc/profile~/.bash_profiel,且被调用的脚本运行结束后,所拥有的环境变量和声明变量会被当前 zsh shell 保留,类似将调用脚本的内容复制过来直接执行,执行完毕后原主 shell 继续运行。所以通过这样的方式就可以使用在 bash shell 环境下配置的环境变量了。

当然你也可以直接将相关的环境变量配置在 ~/.zshrc 文件中,但是显然是多余而且繁琐了,每次你要新增一个环境变量的时候,你都要在 bash shell 有关的配置文件中添加,又要在 zsh shell 有关的配置文件中添加,显然是不合适的。而如果每次加载 ~/.zshrc 文件时会自动调用 bash shell 有关的配置文件,那么所有的环境变量只要在 bash shell 有关的配置文件中添加就可以了。

3、查看 macOS 全部环境变量

输入命令 export,查看全部的环境变量:

[~]$ export
AUTOJUMP_ERROR_PATH=/Users/liaowenxiong/Library/autojump/errors.log
AUTOJUMP_SOURCED=1
HOME=/Users/liaowenxiong
HOMEBREW_BOTTLE_DOMAIN=https://mirrors.ustc.edu.cn/homebrew-bottles
JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_261.jdk/Contents/Home
LANG=zh_CN.UTF-8
LESS=-R
LOGNAME=liaowenxiong
LSCOLORS=Gxfxcxdxbxegedabagacad
NEXUS_HOME=/Users/liaowenxiong/Applications/nexus-3.20.1-01-mac/nexus-latest
OLDPWD=/Users/liaowenxiong
...

4、设置系统环境变量

系统环境变量在 /etc/profile 文件中配置,编辑该文件需要 root 权限:

sudo vim /etc/profile

新增环境变量 JAVA_HOME、CLASS_PATH,内容如下:

JAVA_HOME="/Library/Java/JavaVirtualMachines/jdk1.8.0_131.jdk/Contents/Home"
export JAVA_HOME
CLASS_PATH="$JAVA_HOME/lib"
PATH=".:.$PATH:$JAVA_HOME/bin"

上面的脚本内容解读:
声明定义了一个环境变量 JAVA_HOME,变量的值是 /Library/Java/JavaVirtualMachines/jdk1.8.0_131.jdk/Contents/Home,并且将该变量声明成可以输出,即可以复制给子进程。

二、JDK下载&配置环境变量

1、下载

官网跳转链接
网上优秀博客:https://blog.csdn.net/u011374856/article/details/116641408

2、配置环境变量

下载的是安装包,安装好就自动配置环境变量

3、测试

两个命令

1. java -version
2. java

三、maven下载&配置环境变量

1、下载

https://blog.csdn.net/u011374856/article/details/116648311

2、环境变量

# 1、进入到用户目录下,输入
cd ~
# 2、打开环境变量配置文件
open .bash_profile
# 复制如下内容,MAVEN_HOME 替换为自己目录
export MAVEN_HOME=/Users/yao/Documents/program/apache-maven-3.8.1
export PATH=$MAVEN_HOME/bin:$PATH:.
# 配置文件立即生效
source .bash_profile

# 查看 MAVEN_HOME 目录
echo $MAVEN_HOME

3、测试

# 查看 maven 版本信息
mvn -v

Mac系统下配置环境变量:Javajdk、maven、tomcat 环境变量配置及对应配置文件_第1张图片

4、报错啦

报错信息

错误: 找不到或无法加载主类 org.codehaus.plexus.classworlds.launcher.Launcher

两个方法

  1. 检查配置环境的变量,MAVEN_HOME 的变量只能到maven的路径,不能到bin
  2. 重新下载一个新的版本。(我是通过这个解决的)

四、tomcat下载&配置环境变量(暂无)

因为目前没用,所以暂时不用

你可能感兴趣的:(环境配置,macos,maven,tomcat)