2013-04-23 7 views
21

Я прочитал многие из сообщений здесь и не нашел четкого ответа, который сработал. Поэтому, потратив время на то, чтобы это работало, я решил, что должен опубликовать его.Как создать Visual Studio 2012 Публикационные профили на сервере сборки с MsBuild без установки Visual Studio 2012

Проблема: профиль публикации будет построен на сервере, но не будет публиковать.

Решение:

  1. Убедитесь, что вы установили Microsoft Windows SDK and .Net Framework 4

  2. С клиентской машине с Visual Studio 2012 обновления 2 установлен, копия:

\Program Files(x86)\MSBuild\Microsoft\Visual Studio\v11.0\Web\ 
\Program Files(x86)\MSBuild\Microsoft\Visual Studio\v11.0\WebApplications\ 

К тому же месту на вашем сервере.

Затем сделайте простой пакетный файл:

"C: \ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ MSBuild.exe"/v: Diag YOUPROJECT.sln/р: Конфигурация = Debug/р: DeployOnBuild = истина /р: PublishProfile = YOURPROFILE

Это работает для нас на нескольких серверах сборки.

Надеюсь, это поможет кому-то.

Мне кажется безумным, что Microsoft не предоставила обновление MSBuild всем параметрам публикации. Мне кажется, что инструменты командной строки являются более важными, на сервере ....

Приветствия

+0

Должен ли я установить 32 или 64-разрядную версию SDK (предположим, что сервер сборки сам по себе 64 бит)? – Vertigo

+0

Я потратил часы, пытаясь понять, почему deployonbuild не стрелял как часть моей задачи msbuild. Это заставило меня двигаться в правильном направлении. Благодарю. – Skowronek

+1

Я обнаружил, что, установив обновление Web Tools 2012.2 на сервере сборки, мой DeployOnBuild работал на сервере. http://stackoverflow.com/a/20616532/830402 –

ответ

10

Просто перемещая решение Дэйва в ответ.

Решение:

  1. Убедитесь, что вы установили Microsoft Windows SDK and .Net Framework 4

  2. С клиентской машине с Visual Studio 2012 обновление 2 установлен, копия:

\Program Files(x86)\MSBuild\Microsoft\Visual Studio\v11.0\Web\ 
\Program Files(x86)\MSBuild\Microsoft\Visual Studio\v11.0\WebApplications\ 

К тому же месту на вашем сервере.

Затем сделайте простой пакетный файл:

"C: \ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ MSBuild.exe"/v: диаг YOUPROJECT.SLn/р: Конфигурация = Debug/р: DeployOnBuild = истина /р: PublishProfile = YOURPROFILE

Это работает для нас на нескольких серверах сборки.