使用msbuild任务压缩

时间:2012-03-12 20:38:41

标签: msbuild msbuildcommunitytasks

我尝试创建将压缩构建包的msbuild

我在msbuild文件中有这些行:

<UsingTask AssemblyFile="MSBuild.Community.Tasks.dll" TaskName="MSBuild.Community.Tasks.Zip" />
<Zip Files="$(OutputFiles)" ZipFileName="output\SomeService.v$(BuildNumber).zip" />

当我运行这个msbuild时,我得到了异常:

错误MSB4018:

  

“Zip”任务意外失败。\ r \ n   C:\项目\ SERVICES \ SomeService \ DeployClassificationService.build(92.5):   错误MSB4018:System.IO.FileNotFoundException:无法加载文件或   assembly'ICSharpCode.SharpZipLib,Version = 0.84.0.0,Culture = neutral,   PublicKeyToken = 1b03e6acf1164f73'或其依赖项之一。该   系统找不到指定的文件。\ r

什么是ICSharpCode?我试图将它包含在msbuild fir中,但没有帮助。

谢谢, 阿龙

5 个答案:

答案 0 :(得分:1)

看起来像依赖问题...我认为zip-task需要一个程序集(即ICSharpCode.SharpZipLib)来压缩你的文件。看看这里:http://www.icsharpcode.net/opensource/sharpziplib/Download.aspx或谷歌自己的程序集名称,并将其添加到您的解决方案..如果您已经尝试通过nuget添加它以获得该程序集的依赖关系

答案 1 :(得分:1)

知道了, 只需要包括:

<Import Project="MSBuild.Community.Tasks.Targets" />

答案 2 :(得分:1)

安装MSBuild Community Tasks时,应在安装文件夹%ProgramFiles%\ MsBuild \ MSBuildCommunityTasks中找到ICSharpCode库。

你应该使用Anibas提到的社区任务 OR
将ICSharpCode库放入与MSBuild.Community.Tasks.dll相同的文件夹中。

答案 3 :(得分:0)

ICSharpCode here 如果它回答了你的问题,你有没看过这个post

答案 4 :(得分:0)

更新版的社区任务现在需要Ionic.Zip.Reduced.dll。把它放在我的.build目录中,对我来说一切顺利。