2016-12-07 1 views
1

Как я пытаюсь использовать модуль Invoke-Command, Powershell бросает и ошибается.Powershell 4.0 ошибка бросания как некорректная команда Invoke-MsBuild

 Error: "The term 'Invoke-MsBuild' is not recognized as the name of a cmdlet,function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again." 

я также импортировали модуль с помощью:

Import-Module -Name <Path to the Invoke-MsBuild.psd1> 

После импорта он работает, но когда текущая сессия закрыта, в следующий раз, когда я попробуйте запустить это снова показывает ошибку. Как можно сохранить модуль.

ответ

0

От PowerShell 3.0 и выше. Если вы выполняете командлет, у PS есть интеллект, чтобы выполнить аутоимпорт модуля, и это можно установить с помощью автоматической переменной $ PSModuleAutoloadingPreference в True, но есть места, где PS ожидает модуль. I модуль находится в некотором настраиваемом пути, который вы должны явно импортировать в каждый новый сеанс. Лучшим местом для настраиваемого модуля является Documents/WindowsPowerShell/Modules, если не существует, вы можете создать эту структуру папок и поместить модуль в каталог модуля.

else у вас может быть код Import-Module в вашем скрипте.

лучше посмотрите здесь https://msdn.microsoft.com/powershell/reference/5.1/Microsoft.PowerShell.Core/about/about_Modules

С уважением,

kvprasoon

+0

У вас есть действительный пункт. Моя проблема была решена путем обновления версии powershell до 5.0. – Akki