Передача -p: FrameworkPathOverride на шаг MSBuild в Hudson

#.net #msbuild #hudson #c#-6.0 #.net-4.6

#.net #msbuild #хадсон #c #-6.0 #.net-4.6

Вопрос:

Я пытаюсь настроить элемент сборки на сервере непрерывной интеграции Hudson, используя шаг MSBuild.

Это параметры, которые я передаю:

 -p:FrameworkPathOverride="C:Program Files (x86)Reference AssembliesMicrosoftFramework.NETFrameworkv4.6" /p:Configuration=Release
  

Хотя это работает, когда я запускаю его с консоли, в Hudson происходит сбой:

 Path To MSBuild.exe: C:Program Files (x86)MSBuild14.0BinMSBuild.exe
Executing the command cmd.exe /C "C:Program Files (x86)MSBuild14.0BinMSBuild.exe" "-p:FrameworkPathOverride=C:Program Files (x86)Reference AssembliesMicrosoftFramework.NETFrameworkv4.6" /p:Configuration=Release C:ProjectsMyProjectMyProject.sln amp;amp; exit %%ERRORLEVEL%% from C:ProjectsMyProject
[NET-Examino] $ cmd.exe /C "C:Program Files (x86)MSBuild14.0BinMSBuild.exe" "-p:FrameworkPathOverride=C:Program Files (x86)Reference AssembliesMicrosoftFramework.NETFrameworkv4.6" /p:Configuration=Release C:ProjectsMyProjectMyProject.sln amp;amp; exit %%ERRORLEVEL%%
'C:Program' is not recognized as an internal or external command,
operable program or batch file.
[DEBUG] Skipping watched dependency update for build: MyProject Countinuous Build #27 due to result: FAILURE
Finished: FAILURE
  

Как я могу решить эту проблему, не используя шаг «Выполнить пакетную команду Windows»?

Комментарии:

1. Поместите дополнительные кавычки вокруг этой команды, потому что Хадсон (я думаю), похоже, удаляет их?

2. Я уже перепробовал все комбинации одинарных / двойных кавычек, о которых мог подумать. Хадсон, похоже, полон решимости удалить их и поместить свои собственные вокруг параметра…

Ответ №1:

Похоже, ваш параметр указан неправильно. Это должно быть /p: , но у вас есть -p: .