7/7/2010 16:00 El Bruno

[TFS2008] Prerequisitos para comprimir con MSBuildExtensionPack (porque nadie se salva de J#)

image47dd1de4

Buenas,

cuando trabajas con tareas personalizadas en Builds en TFS2008, el pack de tareas que posee MSBuildExtensionPack, es algo que debes conocer. Una de las tareas que más trabajo nos ahorra está dentro del namespace [MSBuild.ExtensionPack.Compression] y es la clase [Zip]. Supongo que no hará falta que detalle el funcionamiento de la misma, cuando un poco de código de MSBuild vale más que mil palabras:

   1: <Target Name="Sample1">
   2:   <ItemGroup>
   3:     <!-- Set the collection of files to Zip-->
   4:     <FilesToZip Include="C:\hotfixes\**\*"/>
   5:   </ItemGroup>
   6:   
   7:   <!-- Create a zip file based on the FilesToZip collection -->
   8:   <MSBuild.ExtensionPack.Compression.Zip TaskAction="Create" 
   9:     CompressFiles="@(FilesToZip)" 
  10:     RemoveRoot="C:\hotfixes\" 
  11:     ZipFileName="C:\newZipByFile.zip"/>
  12:   
  13:   <!-- Create a zip file based on a Path -->
  14:   <MSBuild.ExtensionPack.Compression.Zip TaskAction="Create" 
  15:     CompressPath="C:\hotfixes" 
  16:     RemoveRoot="C:\hotfixes\" 
  17:     ZipFileName="C:\newZipByPath.zip"/>
  18:   
  19:   <!-- Extract a zip file-->
  20:   <MSBuild.ExtensionPack.Compression.Zip TaskAction="Extract" 
  21:     ExtractPath="C:\aaa11" 
  22:     ZipFileName="C:\newZipByPath.zip"/>
  23: </Target>

 

Este ejemplo realiza varias acciones con la clase Zip, pero en tiempo de ejecución es probable que te encuentres con el siguiente error:

   1: Build FAILED.
   2:  
   3: "c:\b\Bruno\SampleClient\BuildType\TFSBuild.proj" (EndToEndIteration target) (1) ->
   4: (UpdaterGenerateFiles target) -> 
   5: C:\srcbrcp\Bruno\RefBuild\EB.Client.targets(58,5): error : 
   6:   FileNotFoundException: Could not load file or assembly 'vjslib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. 
   7:   El sistema no puede hallar el archivo especificado. [c:\b\Bruno\SampleClient\BuildType\TFSBuild.proj]
   8: C:\srcbrcp\Bruno\RefBuild\EB.Client.targets(58,5): error :  
   9:   [c:\b\Bruno\SampleClient\BuildType\TFSBuild.proj]
  10:  
  11:     0 Warning(s)
  12:     1 Error(s)
  13:  
  14: Time Elapsed 00:00:34.39

Por suerte, la solución del error es lo primero que encuentras cuando buscas por internet (http://www.msbuildextensionpack.com/help/3.5.5.0/Prerequisites%20and%20Installation.htm) y básicamente nos invita a repasar los prerequisitos para utilizar esta tarea, ya que es necesario instalar [Microsoft Visual J#® 2.0 Redistributable Package – Second Edition (x86)]

Una vez instalado, pues ya comprimes sin problemas.

 

Saludos @ Here

El Bruno

Archivado en: ,,
Comparte este post:

# re: [TFS2008] Prerequisitos para comprimir con MSBuildExtensionPack (porque nadie se salva de J#)

Wednesday, July 07, 2010 4:15 PM by Ernesto

Algo debe estar muuuuy mal si aun se requiere el J# ¿sabes si eso sigue siendo el caso en VS 2010?

# re: [TFS2008] Prerequisitos para comprimir con MSBuildExtensionPack (porque nadie se salva de J#)

Wednesday, July 07, 2010 8:00 PM by El Bruno

@amigo

pues parece que las MSBuildExtensions se llevan un poco de los pelos en VS2010, yo estoy en un escenario mixto donde la verdad que me patea un poco ... ^^

resumiendo J# -> malo !!!

Salu2

# [CODEPLEX] DotNetZip: Trabajando con ZIPs de una forma fácil

Thursday, July 08, 2010 10:26 AM by El Bruno

Buenas, después de pelear un poco con tareas de TFS2008 para comprimir archivos , llegué