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
相关推荐
兰亭妙微32 分钟前
2026年UX/UI五大趋势:AI、AR与包容性设计将重新定义用户体验
开发语言·ui·1024程序员节·界面设计·设计趋势
懒羊羊不懒@1 小时前
Java—枚举类
java·开发语言·1024程序员节
m0_748240251 小时前
C++智能指针使用指南(auto_ptr, unique_ptr, shared_ptr, weak_ptr)
java·开发语言·c++
Evand J1 小时前
【MATLAB例程】自适应渐消卡尔曼滤波,背景为二维雷达目标跟踪,基于扩展卡尔曼(EKF)|附完整代码的下载链接
开发语言·matlab·目标跟踪·1024程序员节
百锦再1 小时前
低代码开发的约束性及ABP框架的实践解析
android·开发语言·python·低代码·django·virtualenv·rxjava
csbysj20202 小时前
Scala 字符串
开发语言
自动化小秋葵2 小时前
Python入门经典题目
开发语言·python
xingxing_F3 小时前
Topaz Video AI for Mac AI视频无损放大 视频画质增强
人工智能·macos·音视频
编程岁月3 小时前
java面试-0305-java线程调度方法?sleep()和wait()区别?
java·开发语言·面试
凌晨一点的秃头猪3 小时前
Python 常见 bug 总结和异常处理
开发语言·python·bug