Сбой команды Visual Studio «Опубликовать» - PullRequest
6 голосов
/ 30 апреля 2009

Я работаю над проектом WebForms среднего размера. В связи с особенностями управления здесь, я должен загрузить сайт на удаленный сервер для тестирования (без тестирования localhost). Я использую команду «Опубликовать» в Visual Studio 2008. Иногда это даже работает. Большую часть времени я необъяснимо получаю «ошибка публикации» в левом нижнем углу, без каких-либо подробностей.

Несколько прочитанных мною статей / сообщений на форуме, которые я прочитал, предложили сделать целевую локальную папку для операции публикации доступной для чтения / записи для всех. Не помогает.

Есть ли способ получить более подробную информацию о том, ПОЧЕМУ публикация не удалась в VS2008, и если нет, то есть ли лучший способ выполнить эти развертывания? Я трачу больше времени на сборку / передачу на веб-сервер, чем на отладку.

Ответы [ 10 ]

4 голосов
/ 16 сентября 2010

Стоит проверить окно вывода. У меня только что была ошибка публикации, потому что я удалил изображение вне VS, поэтому VS жаловался, что изображение не может быть найдено, но эта информация отображалась только в окне вывода.

См. Эту ссылку для получения дополнительной информации: http://ericfickes.com/2009/08/find-out-why-visual-studios-publish-fails/

3 голосов
/ 30 апреля 2009

Это происходит с нами при возникновении ошибки в разметке (!). Плохо то, что VS просто проглотит ошибку и скажет вам Failed.

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

2 голосов
/ 04 ноября 2009

С тех пор я обнаружил, что причиной этих конкретных сбоев публикации была опция «Удалить существующие файлы». Использование Visual Studio 2008 под учетной записью без прав администратора в Windows Vista может привести к ошибке разрешений при попытке удалить существующие файлы. Публикация завершится сбоем молча после обнаружения файла, к которому у Visual Studio не было доступа для удаления. После того, как файлы были удалены вручную вне Vidual Studio, публикация работала нормально.

У меня не было этой проблемы с Windows 7; Я предполагаю, что изменения UAC в Windows 7 устранили проблему.

1 голос
/ 10 декабря 2009

То же самое случилось со мной ... я включил файлы изображений, которые не были включены в проект, и удалил изображения, которые не использовались.

1 голос
/ 01 мая 2009

Возможно, это не так, но я видел, как это происходило, когда я публиковал веб-сайт. Если файл app_offline.htm не исключен из вашего проекта (если вы используете этот файл), публикация завершится неудачей.

1 голос
/ 01 мая 2009

Я в основном работаю с веб-формами и ежедневно сталкиваюсь с этой проблемой. Мне кажется, что публикация завершается неудачно, когда не удается удалить файл, который он пытается заменить. Даже если у меня нет открытых файлов, иногда происходит сбой. Не уверен почему. Не только публикация VS очень часто дает сбой, но и мучительно медленная. Я просто публикую в пустой локальный каталог и использую отдельный FTP-клиент для загрузки файлов. Это больше работы, но работает.

0 голосов
/ 20 февраля 2015

Просто чтобы добавить к этой теме, я обнаружил, что по какой-то странной причине на сервер публиковались только файлы Mercurial, а все остальное просто не копировалось.

Другая странная вещь заключалась в том, что была доступна только конфигурация Debug ; Релиз нигде не было видно.

Прочитав другие темы вокруг S.O., я обнаружил, что их было много для VS 2010 и 2012, но не так много, чтобы покрыть ту же проблему с 2008.

Исправление, которое я обнаружил, состояло в том, чтобы удалить файл [решение] . suo и затем выполнить попытку публикации. Это, казалось, делало работу, хотя для ее завершения требовалось много времени.

0 голосов
/ 27 ноября 2013

Я получил это, когда мой файл ProjectName.Publish.xml был доступен только для чтения. После того, как я проверил файл из системы контроля версий, я больше не получил ошибку и смог опубликовать.

0 голосов
/ 13 сентября 2011

Вы должны всегда остановить экземпляр IIS, работающий на компьютере, на котором вы публикуете. Гугл слово " iisreset ". Другие провайдеры хостинга, такие как DiscountAsp и Arvixe, предлагают вам инструменты для «остановки» и «запуска» пула приложений на своих IIS. Это очень необходимо, потому что IIS может заблокировать некоторые файлы как « используется », поэтому ваша публикация завершается неудачно, когда он пытается перезаписать их. После завершения публикации просто перезапустите IIS (или нажмите «Пуск» в веб-инструменте, если вы используете сторонний хостинг-провайдер).

Когда ничего не помогает, проверьте окно «Вывод» (вкладка справа от «Списка ошибок» в нижней части Visual Studio). Прокрутите все это после неудачной публикации и найдите все, что говорит «Невозможно добавить». Если вы продолжаете видеть одни и те же ошибки «Невозможно добавить» в одной и той же публикации, то в папку ftp, удалите проблемные файлы вручную и повторите попытку публикации.

0 голосов
/ 02 ноября 2009

После борьбы с подобной проблемой в течение приблизительно 30 минут, не имея ни малейшего представления о том, что было причиной, она закрыла VS и снова открыла мой проект. Начал работать нормально. Не знаю почему, но это сработало.

...