找不到“CompressorTask”任务

时间:2011-09-16 11:19:26

标签: msbuild

Scripts.xml:

<UsingTask
    TaskName="CompressorTask"
    AssemblyFile="Yahoo.Yui.Compressor.dll" />

<PropertyGroup>
    <JavaScriptOutputFile Condition=" '$(JavaScriptOutputFile)'=='' ">..\..\site.com\javascript\offerta.min.js</JavaScriptOutputFile>
</PropertyGroup>

<Target Name="ScriptTask">
  <ItemGroup>
    <JavaScriptFiles Include="..\..\site.com\javascript\offerta.js"/>
  </ItemGroup>
  <CompressorTask
       JavaScriptFiles="@(JavaScriptFiles)"
       ObfuscateJavaScript="True"
       PreserveAllSemicolons="True"
       DisableOptimizations="False"
       EncodingType="utf-8"
       DeleteJavaScriptFiles="false"
       LineBreakPosition="-1"
       JavaScriptOutputFile="$(JavaScriptOutputFile)"
       LoggingType="HardcoreBringItOn"
       ThreadCulture="en-us"
       IsEvalIgnored="false" />
</Target>

我使用bat文件运行它:

C:\ Windows \ Microsoft.NET \ Framework \ v3.5 \ msbuild.exe Scripts.xml

暂停

我得到了:

“F:\ Checkouts \ Offerta \ trunk \ build \ site.com \ Scripts.xml”(默认目标)(1) - &GT; (ScriptTask目标) - &gt;   F:\ Checkouts \ Offerta \ trunk \ build \ site.com \ Scripts.xml(16,7):错误MSB4036:  找不到“CompressorTask”任务。检查以下内容:1。)的名称 项目文件中的任务与任务类的名称相同。 2.)  任务类是“公共”并实现Microsoft.Build.Framework.ITask inte rface。 3.)在项目文件中正确声明任务,  或位于“C:\ Windows \ Microsoft.NET \ Framework \ v2”中的* .tasks文件。 0.50727“目录。

我做错了什么?我正在使用Yahoo.Yui.Compressor v1.6.0.0.zip(适用于.NET 3.5)。当我明确地运行C:\ Windows \ Microsoft.NET \ Framework \ v3.5 \ msbuild.exe时,为什么msbuild报告“C:\ Windows \ Microsoft.NET \ Framework \ v2.0.50727”?

1 个答案:

答案 0 :(得分:2)

使用Yahoo.Yui.Compressor。 MsBuildTask .dll版本1.6.0.1

不幸的是,这个版本只能通过Nuget Library

获得

详细信息:http://yuicompressor.codeplex.com/discussions/272802