macOS .bash_profile配置文件优化记录

文章目录

说明

  • 展示的代码中,关于具体的文件路径位置,请灵活修改为自己的真实文件目录!

原文件内容

  • 从macOS Catalina(10.15)开始,Zsh成为了macOS的默认Shell。

    bash 复制代码
    chsh -s /bin/zsh
  • 打开.bash_profile文件

    bash 复制代码
    open -e .bash_profile
  • 文件内容显示为:

    bash 复制代码
    export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-22.jdk/Contents
    export PATH=$JAVA_HOME/bin:$PATH:.
    export CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:.
    export MAVEN_HOME=/Library/Java/env/maven/maven-3.9.9
    export PATH=$MAVEN_HOME/bin:$PATH:.
    export PATH=/usr/local/mongodb/bin:$PATH

优化思路

  1. 避免重复设置PATH:每次设置PATH时,都在前面添加新的路径,会导致PATH变量过长。可以一次性集中设置PATH。
  2. 使用更通用的方式设置CLASSPATH:由于tools.jar和dt.jar在较新版本的JDK中可能不再存在,可以考虑动态设置CLASSPATH。
  3. 使用环境变量来减少冗余:将常用路径提取为变量,以便于修改和维护。

优化操作

  1. Java环境变量:确保JAVA_HOME指向Contents/Home目录,这是标准的Java目录结构。
  2. Maven和MongoDB环境变量:继续设置MAVEN_HOMEMONGODB_HOME
  3. CLASSPATH设置:检查$JAVA_HOME/lib目录是否存在,并添加tools.jar和dt.jar
  4. PATH设置:集中一次性添加所有新的路径,避免重复和冗长。
  • 使用#号注释文件中多余的内容
bash 复制代码
#export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-22.jdk/Contents
#export PATH=$JAVA_HOME/bin:$PATH:.
#export CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:.
#export MAVEN_HOME=/Library/Java/env/maven/maven-3.9.9
#export PATH=$MAVEN_HOME/bin:$PATH:.
#export PATH=/usr/local/mongodb/bin:$PATH

# Java Environment
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-22.jdk/Contents/Home
export MAVEN_HOME=/Library/Java/env/maven/maven-3.9.9
export MONGODB_HOME=/usr/local/mongodb

# CLASSPATH: adding JAVA_HOME/lib/tools.jar and JAVA_HOME/lib/dt.jar if they exist
if [ -d "$JAVA_HOME/lib" ]; then
  export CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:.
fi

# PATH: add all necessary paths in one line
export PATH=$JAVA_HOME/bin:$MAVEN_HOME/bin:$MONGODB_HOME/bin:$PATH:.
  • 激活配置:更新.bash_profile后,需要重新加载文件才能使配置生效:

    bash 复制代码
    source ~/.bash_profile

测试验证

1. 验证JAVA_HOME

  • 确保JAVA_HOME环境变量正确设置,并且Java命令可以正常运行:
bash 复制代码
echo $JAVA_HOME
  • 验证Java版本:输出应该显示Java的版本信息
bash 复制代码
java -version

2. 验证MAVEN_HOME

  • 确保MAVEN_HOME环境变量正确设置,并且Maven命令可以正常运行:

    bash 复制代码
    echo $MAVEN_HOME
  • 验证Maven版本:输出应该显示Maven的版本信息

    bsh 复制代码
    mvn -version

3. 验证MONGODB_HOME

bash 复制代码
echo $MONGODB_HOME
  • 验证MongoDB命令是否可用,输出应该显示MongoDB的版本信息

    bash 复制代码
    mongod --version

4. 验证CLASSPATH

-验证CLASSPATH环境变量是否正确设置:
bash echo $CLASSPATH

5. 验证PATH

  • 确保所有路径都已正确添加到PATH环境变量中:

    bash 复制代码
    echo $PATH
相关推荐
The Future is mine21 分钟前
Python计算经纬度两点之间距离
开发语言·python
Enti7c22 分钟前
HTML5和CSS3的一些特性
开发语言·css3
爱吃巧克力的程序媛29 分钟前
在 Qt 创建项目时,Qt Quick Application (Compat) 和 Qt Quick Application
开发语言·qt
刘小哈哈哈1 小时前
封装了一个iOS多分区自适应宽度layout
macos·ios·cocoa
独好紫罗兰1 小时前
洛谷题单3-P5719 【深基4.例3】分类平均-python-流程图重构
开发语言·python·算法
篝火悟者1 小时前
自学-C语言-基础-数组、函数、指针、结构体和共同体、文件
c语言·开发语言
genispan2 小时前
QT/C++ 多线程并发下载实践
开发语言·c++·qt
-代号95272 小时前
【JavaScript】十三、事件监听与事件类型
开发语言·javascript·ecmascript
写代码的小王吧2 小时前
【Java可执行命令】(十)JAR文件签名工具 jarsigner:通过数字签名及验证保证代码信任与安全,深入解析 Java的 jarsigner命令~
java·开发语言·网络·安全·web安全·网络安全·jar
小卡皮巴拉3 小时前
【力扣刷题实战】矩阵区域和
开发语言·c++·算法·leetcode·前缀和·矩阵