Непрерывная интеграция
Я работаю над скриптом PowerShell, чтобы упростить процесс разработки. Я планировал запустить его как событие после сборки, но у меня проблемы.PowerShell Script в PostBuild
С PowerShell стремительных, следующие прекрасно работает:
PS C:\> ./example.ps1
Однако при попытке запуска этого из cmd.exe
следующим образом:
C:\> powershell -command "&\"C:\path to script\example.ps1\""
Скрипт выполняется, но я получаю раунд ошибок назад от PowerShell, состоящего в основном из ошибок разрешения пути от функции resolve-path
:
Решить путь: не удается найти путь «C: \ Documents and Settings \ bdunbar \ Мои документы \ Visual Studio 2008 \ Projects \ CgmFamilyComm \ FamilyComm \ iirf \ cms \ isapirewrite4.dl l ', потому что его не существует. В C: \ Documents и Settings \ bdunbar \ Мои документы \ Visual Studio 2008 \ Projects \ C gmFamilyComm \ Сценарии \ cms.ps1: 4 символ: 27 + $ iirfpath = (Решимость-путь < < < < ../ IIRF/КМВ/isapirewrite4.dll) .path,
Resolve-Path: не удается найти путь 'C: \ Documents и Settings \ bdunbar \ Мои документы \ Visual Studio 2008 \ Projects \ CgmFamilyComm \ FamilyComm \ familycomm' потому, что он do es не существует. В C: \ Documents и Settings \ bdunbar \ Мои документы \ Visual Studio 2008 \ Projects \ C gmFamilyComm \ Сценарии \ cms.ps1: 5 символ: 27 + $ vdirpath = (Решимость-путь < < < < ../ familycomm) .path
Есть ли способ обойти это? Может быть проблема с запуском resolve-path
под cmd.exe
?
[Update]
Я был в состоянии изменить положение вещей, чтобы обойти ошибки, которые происходят, но я все еще получаю ошибки, которые работают прекрасно из командной строки PowerShell. Я не могу понять, в чем разница.
Что сказал Джейсон. Разница, вероятно, связана с вашей линией пути решения. Если вы сомневаетесь, попробуйте сделать свой скрипт без использования пути решения. –