2014-01-14 2 views
0

Я пытаюсь опубликовать проект из командной строки. Вот шаги, которые я взял:Visual Studio 2012 Опубликовать из командной строки

  1. создал совершенно новый ASP.NET MVC 3 (internet) project в Visual Studio 2012

  2. Добавлен профиль публиковать File System с помощью мастера публикации и указанный каталог назначения.

  3. При нажатии на публикацию успешно развернуто приложение в указанном месте.

  4. Добавлен второй публиковать профиль, но на этот раз Web Deploy профиль. Укажите сервер, имя сайта, имя пользователя и пароль для учетной записи, которую я использую для remote desktop, на сервере . Нажато Validate Connection. Он отображает небольшое изображение «tick» , чтобы обозначить успех.

  5. Нажав на публикацию Успешно развертывает приложение на удаленном сервере.

Так что в итоге, когда я использую мастера публикации из в Visual Studio можно успешно развернуть в локальной файловой системе или на удаленном сервере с помощью Web Deploy.

Затем я перейти в командную строку

msbuild MyMVCProject.csproj /p:DeployOnBuild=true /p:PublishProfile=PublishToFileSystem.pubxml /p:VisualStudioVersion=11.0

успешно разворачивает в локальной файловой системе.

Однако

msbuild MyMVCProject.csproj /p:DeployOnBuild=true /p:PublishProfile=BuildServer.pubxml /p:VisualStudioVersion=11.0 /p:AllowUntrustedCertificate=true

Возвращает следующее сообщение об ошибке:

msdeploy error ERROR_USER_UNAUTHORIZED: Web deployment task failed. (Connected to the remote computer ("10.0.1.6") using the Web Management Service, but could not authorize. Make sure that you are using the correct user name and password, that the site you are connecting to exists, and that the credentials represent a user who has permissions to access the site. Learn more at: http://go.microsoft.com/fwlink/?LinkId=221672#ERROR_USER_UNAUTHORIZED.)

Страница она упоминается в сообщении об ошибке не реально помочь мне.

Может ли кто-нибудь помочь, почему я могу развертывать без проблем из мастера публикации Visual Studio, а не из командной строки?

ответ

1

Решение оказалось очень простым. Мне просто нужно было добавить /p:Password=<insert password here> в качестве параметра в командной строке. Я предоставил пароль в мастере publish, но в целях безопасности он не сохраняется в файле .pubxml.

Фактически я обнаружил это из книги «дополнение» от SAYED IBRAHIM HASHIMI. Книга называется Supplement to Inside the Microsoft Build Engine.

Смежные вопросы