2010-07-27 15 views
7

Deseo comenzar a usar MS-Build. Tengo muchos proyectos que construyo manualmente (desde Visual Studio) a partir de ahora. Quiero automatizar el proceso de compilación y preferiblemente desde una máquina en la que no deseo instalar Visual Studio. Empecé a leer sobre MS-Build en MSDN. Pero todavía tengo que obtener una guía paso a paso por dónde empezar y cómo hacerlo. Mis preguntas son como:Cómo iniciar en MS-Build

  1. ¿Cómo puedo iniciar MS-Build? ¿Hay alguna descarga capaz?
  2. ¿Cuál es el primer paso?
  3. Cómo crear un script MS-Build?

Y muchas preguntas similares. ¿Alguien puede guiarme?

Respuesta

11

MS Construir viene con el propio y el ejecutable (msbuild.exe) .NET Framework se encuentra en el directorio de NET-marco, algo así como (según el modelo):

  • C: \ WINDOWS \ Microsoft.NET \ Framework \ v4.0.30319
  • C: \ WINDOWS \ Microsoft.NET \ Framework \ v3.5
  • C: \ WINDOWS \ Microsoft.NET \ Framework \ v2.0.50727

(La versión correcta también está en% path% cuando se usa el "Visu" al comando del sistema Studio "desde el menú de inicio.)

Los archivos MsBuild son archivos xml. Puede empezar por hacer un nuevo archivo de texto, que permite decir "c: \ myscript.msbuild", y copiar y pegar esto en el fichero:

<Project DefaultTargets="MyTarget" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> 
    <Target Name="MyTarget"> 
    <Message Text="Hello world!" Importance="high"/> 
    </Target> 
</Project> 

luego ir a símbolo del sistema y escriba:

C : \ WINDOWS \ Microsoft.NET \ Framework \ v4.0.30319 \ msbuild.exe c: \ myscript.msbuild

Ese es un buen comienzo. :)

Luego puede personalizar los objetivos y las propiedades. Segundo ejemplo:

<Project DefaultTargets="All" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> 
    <PropertyGroup Condition="'$(MyCondition)' == 'x'" > 
    <MyProperty>World2</MyProperty> 
    </PropertyGroup> 
    <Target Name="MyTarget"> 
    <Message Text="Hello" Importance="high"/> 
    <Message Text="$(MyProperty)" Importance="high"/> 
    </Target> 
    <Target Name="MyTarget2"> 
    </Target> 
    <Target Name="All"> 
    <CallTarget Targets="MyTarget" /> 
    <CallTarget Targets="MyTarget2" /> 
    </Target> 
</Project> 

C: \ WINDOWS \ Microsoft.NET \ Framework \ v4.0.30319 \ msbuild.exe c: \ myscript.msbuild/target: MyTarget/propiedad: MyCondition = x

Usted también puede tener archivos de compilación dentro de archivos de compilación.

<Project DefaultTargets="MyTarget" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> 
    <Import Project="MyExternalProperties.msbuild"/> 
    <Target Name="MyTarget"> 
    <Exec Command="echo Hello world 3"/> 
    </Target> 
</Project> 
+0

Muchas gracias. Este va a ser el comienzo más digno para mí. Ahora aprenderé cómo escribir el archivo de compilación para mi proyecto. – Kangkan

8

MSBuild es similar a otros productos de construcción como en Nant (sólo en caso de que haya usado uno de esos), pero todavía es diferente en algunos aspectos.

Here is a good start page en MSDN. Hay una gran cantidad de diferentes librerías de tareas de MSBuild lanzadas bajo varias licencias, la mayoría de las que he visto son completamente gratuitas y vienen con el código fuente.Probablemente los dos más grandes son:

Otros buenos lugares para conseguir información:

Eso debería ser suficiente para empezar. Si no puede encontrar una tarea para hacer lo que desea, solo escríbala usted mismo, es muy fácil.

+0

Gracias. Aunque no pude ver mucho desde la página de inicio en MSDN, espero que los otros proyectos comunitarios mejorarán mis capacidades en MSBuild una vez que pueda usar MSBuild. – Kangkan

+0

Gracias, he agregado el enlace a mi libro allí también. Es la mejor fuente única de información sobre MSBuild. –

+0

@Sayed: Muchas gracias. – Kangkan

Cuestiones relacionadas