versiones ver todas que para net las instalar instalado instala framework debo control aparece .net .net-3.5 msbuild nant

.net - ver - que net framework debo instalar en windows 7



¿Todavía no es compatible y adecuado para.net 3.5/VS2008? (7)

Estoy usando MSBuild para construir mis cosas. Quiero usar CruiseControl.net como Build Server.

Ahora, CCNET se refiere a nAnt mucho, pero parece que ccnet puede hacer la mayoría de las cosas que nant podría hacer a través de la configuración del proyecto y msbuild. Además, nAnt parece un poco incompatible, con un lanzamiento Beta que ya tiene casi un año.

En resumen: estoy realmente contento con MSBuild (especialmente porque es el front-end del compilador "oficial") y un poco incómodo con nAnt, pero no quiero juzgar prematuramente.

¿Cuáles serían las razones para usar nAnt sobre MSBuild? Especialmente con ccnet, que parece superponerse un poco con nant en términos de características (y agregar las cosas relacionadas con la compilación automatizada)


Al igual que tantas personas ya han indicado, la respuesta aquí es "depende". Hay algunas cosas como repetir operaciones que son mucho más simples y más limpias en NAnt. Vea los foros de MSDN para una discusión sobre esto.


CC.NET es simplemente la tecnología de servidor de compilación, no la tecnología de script de compilación. Usamos CC.NET en el trabajo para llamar con gran éxito a los scripts de construcción de MSBuild sin problemas.

NAnt es un lenguaje de compilación de compilación más antiguo y más maduro, pero ambos son similares en la forma en que funcionan. Hay muy pocas cosas que podría hacer en NAnt que tampoco puedo hacer en MSBuild, así que realmente se reduce a cuál te sientes más cómodo. En cuanto a qué tan activo es NAnt, no te pases cuando el último lanzamiento fue ... por el contrario pasa cuando era la última versión nocturna. NAnt tiende a durar mucho tiempo entre lanzamientos, pero las versiones nocturnas suelen ser bastante estables.


En mi opinión, es más una cuestión de preferencia personal. nAnt es un gran marco y MSBuild es casi tan capaz. Con la capacidad de desarrollar fácilmente tareas personalizadas (en ambos marcos) puede lograr casi cualquier cosa que necesite hacer.

No puedo responder a la parte "todavía respaldada" de sus preguntas, pero diría que si ya se siente cómodo con nAnt, entonces es probable que sea viable. Si usted (o alguien de su grupo) está familiarizado con MSBuild, esa es una buena forma de hacerlo.


Honestamente, depende de lo que mejor se adapte a su entorno. Si está utilizando muchas herramientas que no son de Microsoft, nunit, ccnet, ncover. Es probable que encuentres un mejor soporte con nant. Alternativamente, si está utilizando MSTest, TFSBuild, probablemente encuentre MSBuild un mejor entorno. Aprendería las dos cosas y usaría todas las que se adapten mejor a su entorno.


Me parece que también puedes usar un enfoque híbrido, especialmente en proyectos más grandes. Muchos de nuestros scripts nant se están convirtiendo a msbuild cuando se desarrollan nuevos componentes. Ambos admiten las mismas características principales y pueden llamarse entre sí si encuentra una tarea que se admite de forma nativa en una, pero no en la otra.

Para el desarrollo de .NET nuevo que comienza con MSBuild puede ahorrarle mucho tiempo ya que puede ejecutar los archivos de la solución directamente. Extender desde la compilación principal para realizar otras tareas (control de fuente, implementación, etc.) funciona bastante bien.


Si está satisfecho con MSBuild, me quedaría con MSBuild. Este puede ser uno de esos casos en los que la herramienta que aprenda primero sea la que prefiera. Empecé con NAnt y no puedo acostumbrarme a MSBuild. Estoy seguro de que ambos estarán presentes por bastante tiempo.

Hay algunas diferencias fundamentales entre los dos, probablemente mejor resaltadas por esta conversación entre algunos fanáticos de NAnt y un Microsoft .

Curiosamente, Jeremy Miller hizo la pregunta exactamente opuesta en su blog el año pasado.


Si ya tiene un montón de tareas personalizadas que usa con nAnt, quédese con ellas, no gana mucho con MSBuild. Dicho esto, no parece haber nada que NAnt pueda hacer que MSBuild no pueda tener en su núcleo. Ambos pueden llamar a herramientas externas, ambos pueden ejecutar tareas personalizadas basadas en .Net, y ambos tienen un conjunto de tareas de comunidad.

Estamos usando MSBuild aquí por la misma razón que usted: es el sistema de compilación predeterminado para VS ahora, y no teníamos nada específico que preocuparnos.

MSBuildCommunityTasks es una buena base de tareas de terceros para empezar, y cubre la mayoría de las cosas personalizadas que he hecho en nAnt, incluido el soporte de VSS y Subversion.