You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Mac本地安装Apache Airflow失败求助:pendulum调用报错

解决Airflow运行时pendulum.tz.timezone调用错误的方案

方案一:重建虚拟环境,严格按官方依赖安装

  • 删除现有虚拟环境:
    rm -rf venv
    
  • 重新创建并激活Python3.12虚拟环境:
    python3.12 -m venv venv
    source venv/bin/activate
    
  • 安装Airflow时严格使用官方对应版本的约束规则,避免依赖冲突:
    AIRFLOW_VERSION=2.10.0
    PYTHON_VERSION="3.12"
    # 确保使用Airflow官方提供的对应版本约束文件进行安装
    pip install "apache-airflow==${AIRFLOW_VERSION}" --constraint constraints-${AIRFLOW_VERSION}-${PYTHON_VERSION}.txt
    
    注:约束文件可从Airflow官方对应版本的发布资源中获取,不要单独安装pendulum等依赖包。

方案二:修复现有环境的pendulum版本冲突

如果不想重建环境,直接强制安装Airflow兼容的pendulum版本:

  • 执行以下命令安装指定版本的pendulum:
    pip install pendulum==2.1.2 --force-reinstall
    
  • 验证修复效果:
    python -c "import pendulum; print(pendulum.tz.timezone('UTC'))"
    
    若输出<Timezone [UTC]>,说明pendulum已恢复正常,可重新运行Airflow命令。

问题根源

该错误是由于pendulum版本不兼容导致:Airflow 2.10.0针对Python3.12有明确的依赖版本要求,若你单独安装了更高版本的pendulum,会导致pendulum.tz.timezone从可调用函数变为模块对象,从而触发TypeError: 'module' object is not callable。严格遵循官方约束安装可避免此类依赖冲突。

内容的提问来源于stack exchange,提问作者Octav1an888

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.18 17:55:22