python - 在 Conda 环境中安装 Apache-Airflow
问题描述
情况
我正在尝试使用 pip 将apache- airflow 安装到 conda 环境中。我不能,因为 setup.py egg_info 一直失败:
命令“python setup.py egg_info”在 C:\Users\joshu\AppData\Local\Temp\pip-install-3efyslfh\apache-airflow\ 中失败,错误代码为 1
我跑步时的消息
pip install "apache-airflow[s3, postgres]"
我在 Windows cmd 中运行它,然后在 cmd 中以管理员身份再次执行所有步骤(打开 cmd 时 shift+enter)。
(myVenv) C:\Users\joshu\Documents>pip install "apache-airflow[s3, postgres]"
Collecting apache-airflow[postgres,s3]
Using cached https://files.pythonhosted.org/packages/9e/12/6c70f9ef852b3061a3a6c9af03bd9dcdcaecb7d75c8898f82e3a54ad5f87/apache-airflow-1.9.0.tar.gz
Complete output from command python setup.py egg_info:
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "C:\Users\joshu\AppData\Local\Temp\pip-install-3efyslfh\apache-airflow\setup.py", line 102
async = [
^
SyntaxError: invalid syntax
----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in C:\Users\joshu\AppData\Local\Temp\pip-install-3efyslfh\apache-airflow\
我采取的步骤
1)我首先创建了一个conda环境并将pip和setuptools安装到环境中:
C:\Users\joshu\Documents>conda create -n airflow pip setuptools
Solving environment: done
==> WARNING: A newer version of conda exists. <==
current version: 4.5.4
latest version: 4.5.10
Please update conda by running
$ conda update -n base conda
## Package Plan ##
environment location: C:\Users\joshu\Anaconda3\envs\airflow
added / updated specs:
- pip
- setuptools
The following NEW packages will be INSTALLED:
certifi: 2018.8.13-py37_0
pip: 10.0.1-py37_0
python: 3.7.0-hea74fb7_0
setuptools: 40.0.0-py37_0
vc: 14.1-h0510ff6_3
vs2015_runtime: 15.5.2-3
wheel: 0.31.1-py37_0
wincertstore: 0.2-py37_0
C:\Users\joshu\Documents>activate airflow
(airflow) C:\Users\joshu\Documents> pip freeze
certifi==2018.8.13
wincertstore==0.2
(airflow) C:\Users\joshu\Documents>conda list
# packages in environment at C:\Users\joshu\Anaconda3\envs\airflow:
#
# Name Version Build Channel
certifi 2018.8.13 py37_0
pip 10.0.1 py37_0
python 3.7.0 hea74fb7_0
setuptools 40.0.0 py37_0
vc 14.1 h0510ff6_3
vs2015_runtime 15.5.2 3
wheel 0.31.1 py37_0
wincertstore 0.2 py37_0
(airflow) C:\Users\joshu\Documents>where pip
C:\Users\joshu\Anaconda3\envs\airflow\Scripts\pip.exe
C:\Users\joshu\Anaconda3\Scripts\pip.exe
(airflow) C:\Users\joshu\Documents>which pip
/c/Users/joshu/Anaconda3/envs/airflow/Scripts/pip
完成此设置后,运行pip install apache-airflow
会在此页面顶部显示错误
我采取的其他步骤
- 在我的系统上安装 apache-airflow(无 conda 环境)。这可行,但我希望将其包含在环境中。
- 升级设置工具:
(airflow) C:\Users\joshu\Documents>pip install --upgrade setuptools
Collecting setuptools
Using cached https://files.pythonhosted.org/packages/66/e8/570bb5ca88a8bcd2a1db9c6246bb66615750663ffaaeada95b04ffe74e12/setuptools-40.2.0-py2.py3-none-any.whl
Installing collected packages: setuptools
Found existing installation: setuptools 40.0.0
Uninstalling setuptools-40.0.0:
Successfully uninstalled setuptools-40.0.0
Successfully installed setuptools-40.2.0
You are using pip version 10.0.1, however version 18.0 is available.
You should consider upgrading via the 'python -m pip install --upgrade pip' command.
(airflow) C:\Users\joshu\Documents>pip freeze
certifi==2018.8.13
wincertstore==0.2
You are using pip version 10.0.1, however version 18.0 is available.
You should consider upgrading via the 'python -m pip install --upgrade pip' command.
(airflow) C:\Users\joshu\Documents>conda list
# packages in environment at C:\Users\joshu\Anaconda3\envs\airflow:
#
# Name Version Build Channel
certifi 2018.8.13 py37_0
pip 10.0.1 py37_0
python 3.7.0 hea74fb7_0
setuptools 40.2.0 <pip>
setuptools 40.0.0 py37_0
vc 14.1 h0510ff6_3
vs2015_runtime 15.5.2 3
wheel 0.31.1 py37_0
wincertstore 0.2 py37_0
(airflow) C:\Users\joshu\Documents>pip install "apache-airflow[s3, postgres]"
Collecting apache-airflow[postgres,s3]
Using cached https://files.pythonhosted.org/packages/9e/12/6c70f9ef852b3061a3a6c9af03bd9dcdcaecb7d75c8898f82e3a54ad5f87/apache-airflow-1.9.0.tar.gz
Complete output from command python setup.py egg_info:
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "C:\Users\joshu\AppData\Local\Temp\pip-install-n1v4sa6d\apache-airflow\setup.py", line 102
async = [
^
SyntaxError: invalid syntax
----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in C:\Users\joshu\AppData\Local\Temp\pip-install-n1v4sa6d\apache-airflow\
我也尝试过升级 pip 然后运行 install -- 不走运
(airflow) C:\Users\joshu\Documents>python -m pip install --upgrade pip
Collecting pip
Using cached https://files.pythonhosted.org/packages/5f/25/e52d3f31441505a5f3af41213346e5b6c221c9e086a166f3703d2ddaf940/pip-18.0-py2.py3-none-any.whl
Installing collected packages: pip
Found existing installation: pip 10.0.1
Uninstalling pip-10.0.1:
Successfully uninstalled pip-10.0.1
Successfully installed pip-18.0
(airflow) C:\Users\joshu\Documents>which pip
/c/Users/joshu/Anaconda3/envs/airflow/Scripts/pip
(airflow) C:\Users\joshu\Documents>pip --version
pip 18.0 from c:\users\joshu\anaconda3\envs\airflow\lib\site-packages\pip (python 3.7)
(airflow) C:\Users\joshu\Documents>pip install "apache-airflow[s3, postgres]"
最终,我希望在 conda 环境中拥有我的项目所需的气流和相关软件包。
解决方案
该错误似乎是因为async
是 Python 3.7 中的保留关键字,并且此包尚未更新其setup.py
脚本。您可以使用 Python 3.6,直到包更新
conda create -n airflow pip setuptools python=3.6
conda activate airflow
pip install "apache-airflow[s3, postgres]"
推荐阅读
- solr - 无法使用 Oracle 数据库在 Apache Solr 中执行数据导入处理程序
- linux - ptp4l 主偏移、频率和路径延迟的高值
- javascript - 如何在反应导航5中覆盖标题标题
- java - 数据库连接用完
- perl - 在 Perl 中,如何生成所有可能的模式,
- weekday - 如何确定日期分组?月还是工作日?
- tizen - 如何显示 SVG?
- java - 我们可以使用 Java 从 Firestore DB 获取字段值的数据类型吗?
- react-native-render-html - 如何使自定义渲染器具有交互性?(监听组件状态更新,并重新渲染)
- apache - 尝试将部分 url 重写为特定的 php 文件