Aquí podría ser tu PUBLICIDAD


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

votos
26

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)

Publicado el 04/08/2008 a las 15:55
fuente por usuario Michael Stum
En otros idiomas...        العربية       

7 respuestas

votos
15

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.

Respondida el 04/08/2008 a las 11:52
fuente por usuario Brad Tutterow


Aquí podría ser tu PUBLICIDAD


votos
5

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.

Respondida el 04/08/2008 a las 04:12
fuente por usuario palehorse

votos
3

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.

Los MSBuildCommunityTasks son una buena base de trabajo de terceros para empezar, y cubre la mayoría de las cosas a medida que he hecho en Nant, incluyendo VSS y el apoyo de Subversion.

Respondida el 04/08/2008 a las 04:52
fuente por usuario Greg Hurlman

votos
1

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 no 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.

Respondida el 29/08/2008 a las 05:23
fuente por usuario Scott Dorman

votos
1

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.

Respondida el 04/08/2008 a las 04:37
fuente por usuario Nick Berardi

votos
0

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.

Respondida el 29/09/2008 a las 03:00
fuente por usuario Rob Hunter

votos
0

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.

Respondida el 04/09/2008 a las 09:52
fuente por usuario Ken