Команда "Get-azVM" была найдена в модуле "Az.Compute", но модуль не может быть загружен
Я использовал модуль Az в скрипте powershell, который запускается из ядра powershell, но при выполнении скрипта из приложения выдается ошибка (.Net core SDK 2.1).
$ VMExistanceCheck = Get-azVM -ResourceGroupName $ VMResourceGroup -Name $ NewComputerName -ErrorAction SilentlyContinue
Я проверил, что модуль Az.Compute был импортирован туда.
я добавил Import-Module Az.compute -verbose -force
внутри скрипта тоже.
Я получил следующую ошибку, когда сценарий вызывается из приложения с использованием runspace (System.Management.Automation, Version = 6.1.0.0):
System.Management.Automation.RuntimeException: команда "Get-azVM" была найдена в модуле "Az.Compute", но модуль не может быть загружен. Для получения дополнительной информации запустите "Import-Module Az.Compute". ---> System.Management.Automation.CommandNotFoundException: команда "Get-azVM" была найдена в модуле "Az.Compute", но модуль не может быть загружен. Для получения дополнительной информации запустите "Import-Module Az.Compute".
"Get-Module -ListAvailable" показывает, что модуль Az.Compute доступен, но хотя команда "import-module Az.Compute" выполняется с использованием Powershell 6, ничего не импортируется.
2 ответа
Install-Module -Name Az -AllowClobber -Scope CurrentUser
Запустите эту команду. Перезапустите Powershell. Бежать import-module az.compute
снова
Я проверил журнал PowerShellCore/Operational из средства просмотра событий и обнаружил следующую ошибку:
Сообщение об ошибке = Не удалось загрузить файл или сборку 'Microsoft.WindowsAzure.Storage, версия =9.3.0.0, культура = нейтральная, PublicKeyToken=31bf3856ad364e35'. Не удалось найти или загрузить определенный файл. (Исключение из HRESULT: 0x80131621) Полностью квалифицированный идентификатор ошибки = System.IO.FileLoadException,Microsoft.PowerShell.Commands.ImportModuleCommand
Я установил Microsoft.WindowsAzure.Storage, и, наконец, сценарий powershell запускается, и команда Get-AZVM успешно выполняется.