При использовании Web Deployment Project MSBuild использует папку «.TempBuildDir» при выполнении сборки. Можно ли указать альтернативную папку?Проект веб-развертывания/MSBuild - TempBuildDir
ответ
В каталоге C: \ Program Files \ MSBuild \ Microsoft \ WebDeployment \ v9.0 или v10.0 находится файл Microsoft.WebDeployment.targets, где свойство TempBuildDir определено в target_PrepareForBuild.
Поскольку они используют задачу CreateProperty для установки TempBuildDir, он всегда задается жестко запрограммированным значением, даже если свойство уже существует. Это может быть устранение проблемы с кем-то, использующим свойство TempBuildDir, для чего-то еще и испортить сборку.
Вам нужно будет изменить файл Microsoft.WebDeployment.targets, чтобы использовать другой каталог temp.
ВНИМАНИЕ: При изменении файла у вас нет контроля, поэтому используйте свой собственный риск.
Если вы измените следующие строки в мишени _PrepareForBuild от
<CreateProperty Value=".\TempBuildDir\">
<Output TaskParameter="Value" PropertyName="TempBuildDir" />
</CreateProperty>
в
<CreateProperty Value="$(MySpecialWebTempBuildDir)" Condition=" '$(MySpecialWebTempBuildDir)' != '' ">
<Output TaskParameter="Value" PropertyName="TempBuildDir" />
</CreateProperty>
<CreateProperty Value=".\TempBuildDir\" Condition=" '$(MySpecialWebTempBuildDir)' == '' ">
<Output TaskParameter="Value" PropertyName="TempBuildDir" />
</CreateProperty>
Затем установите свойство MySpecialWebTempBuildDir в файле проекта, и он должен заменить его. Если вы не установите MySpecialWebTempBuildDir, то он будет использовать TempBuildDir, как и раньше.
Если вы установите обновление в пакет веб-развертывания, ваши изменения будут перезаписаны.
Другим решением является разкомментируйте и переопределить «BeforeBuild» цель проекта развертывания веб следующим образом:
<Target Name="BeforeBuild">
<CreateProperty Value=".\TempBuildDirDebug\" Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<Output TaskParameter="Value" PropertyName="TempBuildDir" />
</CreateProperty>
<CreateProperty Value=".\TempBuildDirRelease\" Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<Output TaskParameter="Value" PropertyName="TempBuildDir" />
</CreateProperty>
- 1. Проект развертывания VS2005 для VS2008 - ошибки компилятора ASPNET
- 2. Проект Maven - общий проект
- 3. Проект веб-развертывания - копирование файлов после сборки
- 4. TFS + проект com + проект .net
- 5. Построить проект, содержащий Lib проект, содержащий Lib проект с муравьем
- 6. Как преобразовать проект winforms в проект wpf
- 7. Проект на основе модуля и нормальный проект
- 8. Как конвертировать проект VB в проект VBA?
- 9. конвертировать проект JPA в проект java eclipse
- 10. Android - включить проект библиотеки в основной проект
- 11. Как преобразовать разветвленный проект в обычный проект
- 12. Добавить проект Web Api в существующий проект
- 13. Проект WebForms вызывает проект WebApi 2
- 14. Как сделать проект git как проект Android?
- 15. Проект преобразования Java в проект войны
- 16. Отсутствует проект «HelloFacebookSample» Java-проект «facebook»
- 17. Ввести проект Rails в любой проект?
- 18. конвертировать проект андроида в проект библиотеки
- 19. Интегрируйте проект в проект ember cli
- 20. конвертировать проект Netbeans в проект затмения
- 21. Интегрируйте проект Worklight в существующий проект IOS
- 22. Как преобразовать проект градиента в проект андроида
- 23. Зачем запускать проект, не выполняющий зависимый проект
- 24. Как включить проект Java в проект Android?
- 25. Проект Visual Studio VSIX запускает неправильный проект
- 26. Как преобразовать проект Ant в проект Maven
- 27. Мой проект не признает добавленный проект
- 28. Импортировать проект Gradle в проект Android
- 29. Xtext, импортировать другой проект в проект MyDsl
- 30. Как вставить проект hg в проект git?