代码之家  ›  专栏  ›  技术社区  ›  searain

在imac上安装apache airflow-airflow initdb-importerror:无法导入name对象

  •  0
  • searain  · 技术社区  · 7 年前

    我试着在iMac上安装气流

    airflow initdb
    

    我有这个错误

    Traceback (most recent call last):
        File "/Users/admin/anaconda/bin/airflow", line 21, in <module>
          from airflow import configuration
        File "/Users/admin/anaconda/lib/python2.7/site-packages/airflow/__init__.py", line 37, in <module>
          from airflow.models import DAG
        File "/Users/admin/anaconda/lib/python2.7/site-packages/airflow/models.py", line 32, in <module>
          import dill
        File "/Users/admin/anaconda/lib/python2.7/site-packages/dill/__init__.py", line 60, in <module>
          from . import objtypes as types
        File "/Users/admin/anaconda/lib/python2.7/site-packages/dill/objtypes.py", line 16, in <module>
          from dill import objects
        ImportError: cannot import name objects
    

    我找到了这根线, While airflow initdb, ImportError: cannot import name HiveOperator 不适用于在iMac上安装气流,错误也不完全相同。但我还是试了一下。我改变了配置

    # load_examples = True # default set up as True
    load_examples = False # change to false to avoid airflow initdb error - But the error still there. 
    

    但是我在运行airflow initdb时仍然会得到同样的错误。

    1 回复  |  直到 7 年前
        1
  •  1
  •   scotthb    7 年前

    您可能需要检查系统上安装的DILL版本。0.2A1之前的版本(特别是0.1A1版本)不包含“objects”,会引发上面看到的错误。

    我在我的Mac上创建了一个测试Conda环境,并尝试通过PIP安装使用各种版本的dill进行失败的导入。

    DILL版本0.1A1的结果:

    (dill_test) pip install dill==0.1a1
    Collecting dill==0.1a1
    Installing collected packages: dill
    Successfully installed dill-0.1a1
    (dill_test)  python
    Python 2.7.15 |Anaconda, Inc.| (default, Dec 14 2018, 13:10:39)
    [GCC 4.2.1 Compatible Clang 4.0.1 (tags/RELEASE_401/final)] on darwin
    >>> from dill import objects
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    ImportError: cannot import name objects
    

    DILL版本为0.2A1或更高版本的结果(导入对象时无错误):

    (dill_test) pip uninstall dill
    Uninstalling dill-0.1a1:
      Would remove:
        /Users/.../anaconda2/envs/dill_test/lib/python2.7/site-packages/dill-    0.1a1.dist-info/*
        /Users/.../anaconda2/envs/dill_test/lib/python2.7/site-packages/dill/*
    Proceed (y/n)? y
      Successfully uninstalled dill-0.1a1
    (dill_test) pip install dill==0.2a1
    Collecting dill==0.2a1
    Installing collected packages: dill
    Successfully installed dill-0.2a1
    (dill_test) python
    Python 2.7.15 |Anaconda, Inc.| (default, Dec 14 2018, 13:10:39)
    [GCC 4.2.1 Compatible Clang 4.0.1 (tags/RELEASE_401/final)] on darwin
    >>> from dill import objects
    >>>
    

    https://pypi.org/project/dill/

    推荐文章