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
相关推荐
“AI国潮设计-小江”2 小时前
【Python实战】SDXL精准控制“普宁英歌舞×星空蛋糕”IP落地,附核心Prompt与商用授权思路
开发语言·人工智能·python·prompt·aigc
k4m7v2pz2 小时前
从 Python 搬到 Rust:pyglet MIDI DAW 变成 egui 鬼畜采样器的迁移复盘
开发语言·python·rust
C++ 老炮儿的技术栈2 小时前
MFC CPtrArray的用法
开发语言·数据结构·c++·算法·mfc·c
佳児素花痴╮2 小时前
C++基础速通
开发语言·c++
是立不是利2 小时前
深入理解JavaScript事件委托
开发语言·前端·javascript
啊阿狸不会拉杆2 小时前
《计算机网络-自顶向下方法》6.4 交换局域网 读书笔记
开发语言·计算机网络·php
心中有你02143 小时前
Python Tkinter 情侣恋爱日记桌面小程序(本地文件存储,无数据库)
开发语言·python
千码君20163 小时前
提词器项目V1.0功能分析
ide·macos·xcode
疯狂打码的少年3 小时前
【计算机网络】OSI/RM七层模型(层次结构、各层功能速览)
开发语言·笔记·计算机网络·php
小灰灰搞电子3 小时前
Rust+Slint 实现ModbusRTU从机调试助手源码分享
开发语言·rust·modbusrtu