Connexion: pip install connexion[swagger-ui]:找不到匹配项:connexion[swagger-ui]

创建于 2018-11-14  ·  10评论  ·  资料来源: zalando/connexion

描述

尝试遵循此处列出的教程: https ://medium.com/@ssola/building-microservices-with-python-part-3-a556a4c4bc00

无法安装 swagger-ui pip extra

预期行为

安装应该已经安装了swagger-ui

实际行为

no matches found: connexion[swagger-ui]

重现步骤

pip install connexion[swagger-ui]:

附加信息:

命令的输出:

  • python --version
    Python 3.6.7 :: Anaconda, Inc.
  • pip show connexion | grep "^Version\:"
    Version: 2.0.1

最有用的评论

pip install "connexion[swagger-ui]"为我工作

所有10条评论

嘿@mas-dse-juremigi

我无法重现该错误。 几个问题想请教您:

  1. 您一般可以安装 pip extras 吗?
  2. 你从pip install connexion[tests]得到同样的错误吗?
  3. pip --version的输出是什么?

这是我尝试过的:

✔ /tmp/pip > virtualenv venv
Running virtualenv with interpreter /usr/bin/python2
New python executable in /tmp/pip/venv/bin/python2
Also creating executable in /tmp/pip/venv/bin/python
Installing setuptools, pkg_resources, pip, wheel...done.
✔ /tmp/pip > . venv/bin/activate
(venv) ✔ /tmp/pip > pip install connexion[swagger-ui]
Collecting connexion[swagger-ui]
  Using cached https://files.pythonhosted.org/packages/0c/ad/69d7947053b960c4eb8229e01aefbd848d8a28a30972a8de52184cfde550/connexion-2.0.1-py2.py3-none-any.whl
Collecting typing>=3.6.1; python_version < "3.6" (from connexion[swagger-ui])
  Using cached https://files.pythonhosted.org/packages/cc/3e/29f92b7aeda5b078c86d14f550bf85cff809042e3429ace7af6193c3bc9f/typing-3.6.6-py2-none-any.whl
Collecting requests>=2.9.1 (from connexion[swagger-ui])
  Using cached https://files.pythonhosted.org/packages/ff/17/5cbb026005115301a8fb2f9b0e3e8d32313142fe8b617070e7baad20554f/requests-2.20.1-py2.py3-none-any.whl
Collecting clickclick>=1.2 (from connexion[swagger-ui])
  Using cached https://files.pythonhosted.org/packages/b6/51/2b04f7a56dcbacc0e3a7cf726e1d88d28866bf488a7a0668582306e1e643/clickclick-1.2.2-py2.py3-none-any.whl
Collecting six>=1.9 (from connexion[swagger-ui])
  Using cached https://files.pythonhosted.org/packages/67/4b/141a581104b1f6397bfa78ac9d43d8ad29a7ca43ea90a2d863fe3056e86a/six-1.11.0-py2.py3-none-any.whl
Collecting PyYAML>=3.11 (from connexion[swagger-ui])
Collecting pathlib>=1.0.1; python_version < "3.4" (from connexion[swagger-ui])
Collecting jsonschema<3.0.0,>=2.5.1 (from connexion[swagger-ui])
  Using cached https://files.pythonhosted.org/packages/77/de/47e35a97b2b05c2fadbec67d44cfcdcd09b8086951b331d82de90d2912da/jsonschema-2.6.0-py2.py3-none-any.whl
Collecting flask>=0.10.1 (from connexion[swagger-ui])
  Using cached https://files.pythonhosted.org/packages/7f/e7/08578774ed4536d3242b14dacb4696386634607af824ea997202cd0edb4b/Flask-1.0.2-py2.py3-none-any.whl
Collecting inflection>=0.3.1 (from connexion[swagger-ui])
Collecting openapi-spec-validator>=0.2.4 (from connexion[swagger-ui])
  Using cached https://files.pythonhosted.org/packages/6e/02/8e436ff26d13dcae0f3b53acf19df7ddde91cbe0ebf98b8c37e884839253/openapi_spec_validator-0.2.4-py2-none-any.whl
Collecting swagger-ui-bundle>=0.0.2; extra == "swagger-ui" (from connexion[swagger-ui])
  Using cached https://files.pythonhosted.org/packages/46/fb/17cf46d8a650f3266ce46eaf6316e20288278c04d1aa3575b82581c7fb0c/swagger_ui_bundle-0.0.2-py2-none-any.whl
Collecting idna<2.8,>=2.5 (from requests>=2.9.1->connexion[swagger-ui])
  Using cached https://files.pythonhosted.org/packages/4b/2a/0276479a4b3caeb8a8c1af2f8e4355746a97fab05a372e4a2c6a6b876165/idna-2.7-py2.py3-none-any.whl
Collecting urllib3<1.25,>=1.21.1 (from requests>=2.9.1->connexion[swagger-ui])
  Using cached https://files.pythonhosted.org/packages/62/00/ee1d7de624db8ba7090d1226aebefab96a2c71cd5cfa7629d6ad3f61b79e/urllib3-1.24.1-py2.py3-none-any.whl
Collecting certifi>=2017.4.17 (from requests>=2.9.1->connexion[swagger-ui])
  Using cached https://files.pythonhosted.org/packages/56/9d/1d02dd80bc4cd955f98980f28c5ee2200e1209292d5f9e9cc8d030d18655/certifi-2018.10.15-py2.py3-none-any.whl
Collecting chardet<3.1.0,>=3.0.2 (from requests>=2.9.1->connexion[swagger-ui])
  Using cached https://files.pythonhosted.org/packages/bc/a9/01ffebfb562e4274b6487b4bb1ddec7ca55ec7510b22e4c51f14098443b8/chardet-3.0.4-py2.py3-none-any.whl
Collecting click>=4.0 (from clickclick>=1.2->connexion[swagger-ui])
  Using cached https://files.pythonhosted.org/packages/fa/37/45185cb5abbc30d7257104c434fe0b07e5a195a6847506c074527aa599ec/Click-7.0-py2.py3-none-any.whl
Collecting functools32; python_version == "2.7" (from jsonschema<3.0.0,>=2.5.1->connexion[swagger-ui])
Collecting Werkzeug>=0.14 (from flask>=0.10.1->connexion[swagger-ui])
  Using cached https://files.pythonhosted.org/packages/20/c4/12e3e56473e52375aa29c4764e70d1b8f3efa6682bef8d0aae04fe335243/Werkzeug-0.14.1-py2.py3-none-any.whl
Collecting Jinja2>=2.10 (from flask>=0.10.1->connexion[swagger-ui])
  Using cached https://files.pythonhosted.org/packages/7f/ff/ae64bacdfc95f27a016a7bed8e8686763ba4d277a78ca76f32659220a731/Jinja2-2.10-py2.py3-none-any.whl
Collecting itsdangerous>=0.24 (from flask>=0.10.1->connexion[swagger-ui])
  Using cached https://files.pythonhosted.org/packages/76/ae/44b03b253d6fade317f32c24d100b3b35c2239807046a4c953c7b89fa49e/itsdangerous-1.1.0-py2.py3-none-any.whl
Collecting MarkupSafe>=0.23 (from Jinja2>=2.10->flask>=0.10.1->connexion[swagger-ui])
  Using cached https://files.pythonhosted.org/packages/bc/3a/6bfd7b4b202fa33bdda8e4e3d3acc719f381fd730f9a0e7c5f34e845bd4d/MarkupSafe-1.1.0-cp27-cp27mu-manylinux1_x86_64.whl
Installing collected packages: typing, idna, urllib3, certifi, chardet, requests, PyYAML, click, clickclick, six, pathlib, functools32, jsonschema, Werkzeug, MarkupSafe, Jinja2, itsdangerous, flask, inflection, openapi-spec-validator, swagger-ui-bundle, connexion
Successfully installed Jinja2-2.10 MarkupSafe-1.1.0 PyYAML-3.13 Werkzeug-0.14.1 certifi-2018.10.15 chardet-3.0.4 click-7.0 clickclick-1.2.2 connexion-2.0.1 flask-1.0.2 functools32-3.2.3.post2 idna-2.7 inflection-0.3.1 itsdangerous-1.1.0 jsonschema-2.6.0 openapi-spec-validator-0.2.4 pathlib-1.0.1 requests-2.20.1 six-1.11.0 swagger-ui-bundle-0.0.2 typing-3.6.6 urllib3-1.24.1
(venv) ✔ /tmp/pip > pip freeze | grep swagger
swagger-ui-bundle==0.0.2

您也可以只安装swagger-ui-bundle来解锁。
尽管如此,还是有必要弄清楚为什么文档中规定的方式对您不起作用。

我们在 Windows 10 上发现了一个类似的问题。在我的开发 mac 上, connexion['swagger=ui']按预期工作。

no matches found消息可能来自 Zsh shell。 这是我系统上的完整消息(注意 zsh: 开头):

zsh: no matches found: connexion[swagger-ui]

这是由 Zsh 文件名生成引起的,请参阅man zshexpn

FILENAME GENERATION
       If a word contains an unquoted instance of one of the  characters  `*',
       `(',  `|',  `<',  `[', or `?', it is regarded as a pattern for filename
       generation, unless the GLOB option is unset. If the EXTENDED_GLOB
       option is set, the `^' and `#' characters also denote a pattern; other‐
       wise they are not treated specially by the shell.

基本上,Zsh 试图将“模式”扩展为connexionsconnexionwconnexiona等文件名。其他 shell(即 bash)要么没有那种扩展或默认禁用它。 对于Zsh,参数需要加引号。

看起来像zsh

``
hjacobs@mycomputer :~$ zsh
mycomputer% pip install connexion[swagger-ui] --user
zsh:未找到匹配项:连接 [swagger-ui]

pip install "connexion[swagger-ui]"为我工作

任何人都能够将其格式化为需求文件?

大家好,有没有人设法包含在需求文件中?

@johanngomes回复晚了,但我在尝试部署到 Google App Engine(第二代)时遇到了同样的问题。 Connexion 安装得很好,但无论出于何种原因,额外的[swagger-ui]都没有。

正如@dtkav提到的,只需将swagger-ui-bundle到您的需求文件中(这就是安装时所有额外包的作用)

以下是我使用pipenv转储requirements.txt文件时得到的输出(已删除其他依赖项)

命令:

pipenv lock -r
connexion[swagger-ui]==2.7.0
此页面是否有帮助?
0 / 5 - 0 等级