我在django-heroku
中安装了package
(而不是dev-package
)。 gunicorn
是django-heroku
的dev依赖项。参见:https://github.com/heroku/django-heroku/blob/master/Pipfile
我希望运行pipenv install --dev
之后,再运行pipenv run gunicorn
。
那为什么会引发以下错误?
Error: the command gunicorn could not be found within PATH or Pipfile's [scripts].
如果开发人员依赖项不可用,install --dev
的意义是什么?
答案 0 :(得分:7)
一个答案是,软件包X的“开发依赖项”是某人在开发(而不是使用)软件包X时需要的软件包。
我希望在运行pipenv之后在我的项目中安装--dev ...
如果在项目中使用pipenv install --dev
,pipenv应该安装开发项目所需的所有软件包。
如果它递归地安装了所有dev依赖项,则可能会引入其他配置包需要的Python分析包,测试运行器等。这些不一定适合开发您的项目的人。
例如,如果我的项目将pytest
列为开发依赖项,那么我对安装pipenv
的{{1}}感到不满意,而在其他版本中,nose
可以列为开发依赖项,过期的软件包。
如果您的软件包的开发人员需要gunicorn
,则应将其明确列为项目的dev依赖项。
答案 1 :(得分:0)
我相信您链接的Pipfile
仅与此包的开发相关。
但是,安装软件包时,通常依赖于setup.py
:
REQUIRED = [
'dj-database-url>=0.5.0', 'whitenoise', 'psycopg2', 'django'
]
如您所见,gunicorn
丢失了。