Heroku上传 - 找不到满足要求的版本anaconda-client == 1.4.0

时间:2017-11-15 09:57:52

标签: python django heroku

我正在尝试将Django应用程序推送到Heroku上,但是在运行git push heroku master时出现以下错误

Counting objects: 80, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (74/74), done.
Writing objects: 100% (80/80), 990.21 KiB | 0 bytes/s, done.
Total 80 (delta 20), reused 0 (delta 0)
remote: Compressing source files... done.
remote: Building source:
remote: 
remote: -----> Python app detected
remote:  !     The latest version of Python 2 is python-2.7.14 (you are using 
python-2.7.12, which is unsupported).
remote:  !     We recommend upgrading by specifying the latest version 
(python-2.7.14).
remote:        Learn More: https://devcenter.heroku.com/articles/python-
runtimes
remote: -----> Installing python-2.7.12
remote: -----> Installing pip
remote: -----> Installing requirements with pip
remote:        Collecting alabaster==0.7.7 (from -r 
/tmp/build_a1f6d188f9e0e61e01076a73d4e10542/requirements.txt (line 1))
remote:          Downloading alabaster-0.7.7-py2.py3-none-any.whl
remote:        Collecting anaconda-client==1.4.0 (from -r 
/tmp/build_a1f6d188f9e0e61e01076a73d4e10542/requirements.txt (line 2))
remote:          Could not find a version that satisfies the requirement 
anaconda-client==1.4.0 (from -r 
/tmp/build_a1f6d188f9e0e61e01076a73d4e10542/requirements.txt (line 2)) (from 
versions: 1.1.1, 1.2.2)
remote:        No matching distribution found for anaconda-client==1.4.0 (from 
-r /tmp/build_a1f6d188f9e0e61e01076a73d4e10542/requirements.txt (line 2))
remote:  !     Push rejected, failed to compile Python app.
remote: 
remote:  !     Push failed
remote: Verifying deploy...
remote: 
remote: !   Push rejected to demo-freshstart.

似乎它与Anaconda有关,但我在我的requirements.txt中很早就看到了Anaconda,所以认为它可能只是因为其他原因而被抓住的第一件事。任何帮助将不胜感激。谢谢。

7 个答案:

答案 0 :(得分:3)

您是否在conda中创建了环境?

如果是这样,激活env后。你需要conda install pip来激活pip install,否则你的pip冻结会回到默认的anaconda环境。 (这就是为什么你在那里看到它们)

1 conda install pip 2 pip再次安装所有可用的包。 (例如pip install django) 3 pip freeze> requirements.txt

请参见下面的神话5 https://jakevdp.github.io/blog/2016/08/25/conda-myths-and-misconceptions/

答案 1 :(得分:2)

对于每条消息

  

找不到X的匹配分布

,您必须手动将其从requirements.txt文件中删除:

1-删除X出现的行
2-保存文件
3-提交
4-推

针对提示所报告的下一个错误,再次执行此操作,直到到达所需条件列表中的结尾为止。

答案 2 :(得分:1)

根据PyPI,没有anaconda-client 1.4.0版本:最高版本是1.2.2。

答案 3 :(得分:1)

该错误可能是由于 Anaconda 库已更改,并且 1.4.0 和其他版本已被删除,因此它们不再存在。

其中一些是:

anaconda-client==1.7.2
anaconda-navigator==1.9.7
anaconda-project==0.8.2
blaze==0.11.3    
clyent==1.2.2    
conda==4.9.2
conda-build==3.20.5
conda-package-handling==1.3.11
...

(==removed versions)

尝试仅通过 updating all the libraries in your environment 解决问题:

conda update -n base conda
conda update --all

然后

pip freeze>requirements.txt
git add .
git commit -m "something"
git push heroku master

答案 4 :(得分:0)

此错误的解决方案非常简单:

  1. 我希望您已经在应用程序文件夹中创建了 requirements.txt 文件,您运行了pip> Frozen命令并进行了提交和推送。

执行此操作时,pip还可自动将模块添加到文件中,Pip还可自动从本地代码库安装依赖项。那可能是个问题。

  1. 只需转到您的require.txt文件,并找到 anaconda-client == 1.4.0 (或以“找不到与该模块匹配的发布开头”的错误)并将其删除从文件中。

  2. 保存文件,提交推送

我在使用conda时遇到了类似的问题和错误,我采取了相同的步骤,并且对我有用。

我希望它对你们中的某些人有帮助。

答案 5 :(得分:0)

也试试这个:

pip freeze>requirements.txt

然后再尝试

git add .
git commit -m "something"
git push heroku master

答案 6 :(得分:0)

Could not find a version that satisfies the requirement 
anaconda-client==1.4.0 (from -r 
/tmp/build_a1f6d188f9e0e61e01076a73d4e10542/requirements.txt (line 2))
(from  versions: 1.1.1, 1.2.2)

你好, 可能为时已晚,但对其他人有帮助。我遇到了同样的问题(但使用了不同的包),这就是我所做的(并且有效!)

<块引用>

这个包是我项目的必需品,所以我无法删除它

  • requirments.txt 中的可用版本替换了我的软件包版本,在您的情况下为 1.1.1 or 1.2.2
  • 然后git heroku master