Не удалось найти задачу MSDeploy в MSBuild

Я пытаюсь использовать задачу MSDeploy в MSBuild (вместо того, чтобы вызывать ее из командной строки). Я предположил, что эта задача встроена в MSBuild, но, похоже, у меня возникли проблемы с ее поиском. Ошибка, которую я получаю, приведена ниже. Я только что переустановил инструмент веб-развертывания, чтобы посмотреть, может ли это помочь.

C:\CLIENTS\DAM\Components\Umbraco\SiteTemplate_v6_1_6\Build>msbuild MSBuildScript.csproj -t:Deploy_v2
Microsoft (R) Build Engine version 4.0.30319.17929
[Microsoft .NET Framework, version 4.0.30319.18052]

<!-- some other stuff -->

error MSB4036: The "MSDeploy" task was not found. Check
     the following: 1.) The name of the task in the project file is the same as the name of the task class. 2.) The task class is "public" and imple
    ments the Microsoft.Build.Framework.ITask interface. 3.) The task is correctly declared with <UsingTask> in the project file, or in the *.tasks
    files located in the "c:\Windows\Microsoft.NET\Framework\v4.0.30319" directory.

person samaspin    schedule 25.10.2013    source источник


Ответы (1)


v10.0 может отличаться (например, v11.0)

Выполните поиск файла «Microsoft.WebApplication.targets» и измените оператор импорта, чтобы он соответствовал.

<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" DefaultTargets="AllTargetsWrapped">

        <Import Project="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets" />

    <!-- Bunch of Other Stuff -->



    <Target Name="AllTargetsWrapped">

        <CallTarget Targets="ShowVariables" />

    </Target>


    <Target Name="ShowVariables" >
        <Message Text="MSBuildExtensionsPath = $(MSBuildExtensionsPath)" />
    </Target>
person granadaCoder    schedule 25.10.2013
comment
Спасибо, я пробовал что-то подобное, но просто копирование вашего оператора импорта помогло мне. - person samaspin; 25.10.2013