Ошибка функции Azure: ModuleNotFoundError - PullRequest
0 голосов
/ 27 мая 2020

Я следовал официальной документации, чтобы создать свой файл requirements.txt. Насколько я понимаю, функция должна иметь возможность использовать модули, если они находятся в файле requirements.txt. Вот пример того, как выглядит этот файл, со всеми модулями и их версиями, написанными таким образом:

azure-common==1.1.12
azure-keyvault==1.0.0
azure-mgmt-keyvault==1.0.0
azure-mgmt-nspkg==2.0.0
azure-mgmt-resource==1.2.2
azure-storage-blob==12.3.1
azure-mgmt-subscription==0.5.0
azure-mgmt-network==10.2.0
azure-functions==1.2.1

Однако, когда я смотрю журналы функции, я вижу, что он продолжает бросать ошибка: «ModuleNotFoundError: нет модуля с именем 'azure .common'». Это первый модуль, который я пытаюсь импортировать в __init__.py. Что я делаю не так?

1 Ответ

1 голос
/ 01 июня 2020

Похоже, что все модули, которые вы используете в своей функции, являются старой версией (например, azure-common==1.1.12, azure-keyvault==1.0.0 .....). Не могли бы вы установить модули с последней версией. Вы можете искать их на этой странице и, например, если вы устанавливаете последний модуль azure-common, просто запустите команду pip install azure-common (номер версии не нужен), она установит последнюю версию модуля.

А затем используйте приведенную ниже команду в коде VS, чтобы автоматически сгенерировать «requirements.txt».

pip freeze > requirements.txt

enter image description here

Затем разверните код функции из локального в azure с помощью команды:

func azure functionapp publish <function app name> --build remote

Он развернет код в azure и установит модули в соответствии с содержимым в "requirements.txt", который вы создали только сейчас.

Надеюсь, это поможет ~

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...