É nAnt ainda apoiada e adequado para NET 3.5 / VS2008?

votos
26

Eu estou usando MSBuild para construir as minhas coisas. Eu quero usar CruiseControl.net como pela compilação do servidor.

Agora, CCNET refere nAnt muito, mas parece que ccnet pode fazer a maior parte do nant coisas poderia fazer através da configuração do projeto e msbuild. Além disso, nAnt parece um pouco sem suporte, com uma versão beta que é quase um ano agora.

Em suma: Estou realmente muito feliz com MSBuild (especialmente desde que é o fim oficial do compilador frente) e um pouco desconfortável com nAnt, mas eu não quero julgar prematuramente.

Qual seria razões para usar nAnt sobre MSBuild? Especialmente com ccnet, que parece sobrepor-se um pouco com nant em termos de características (e adicionando o material de construção relacionados automatizado)

Publicado 04/08/2008 em 15:55
fonte usuário
Em outras línguas...                            


7 respostas

votos
15

Se você está muito feliz com MSBuild, então eu iria ficar com MSBuild. Isso pode ser um daqueles casos em que a ferramenta que aprender primeiro é o que você vai preferir. Comecei com NAnt e não consegue se acostumar com MSBuild. Tenho certeza que eles serão ambos em torno de algum tempo.

Existem algumas diferenças fundamentais entre os dois, provavelmente mais destacadas por esta conversa entre alguns fãs NAnt e uma Microsoftie .

Curiosamente, Jeremy Miller pediu a exata questão oposto em seu blog no ano passado.

Respondeu 04/08/2008 em 23:52
fonte usuário

votos
5

Na minha opinião, é mais uma questão de preferência pessoal. nAnt é um grande quadro e MSBuild é quase tão capaz. Com a capacidade de desenvolver facilmente tarefas personalizadas (em ambos os quadros) você pode realizar quase qualquer coisa que você precisa fazer.

Eu não posso responder a parte "ainda suportado" de suas perguntas, mas eu diria que se você já está confortável com nAnt então provavelmente é viável. Se você (ou alguém em seu grupo) está familiarizado com MSBuild então isso é uma boa maneira de ir também.

Respondeu 04/08/2008 em 16:12
fonte usuário

votos
3

Se você já tem um monte de tarefas personalizadas que você usa com nAnt, ficar com ela - você não ganhar muito com MSBuild. Dito isto, há não parece ser qualquer coisa que nAnt pode fazer isso MSBuild não pode em seu núcleo. Ambos podem chamar ferramentas externas, tanto pode executar tarefas personalizadas baseadas em .Net, e ambos têm um monte de tarefas comunitárias lá fora.

Estamos usando MSBuild aqui pela mesma razão que você está - é o sistema de compilação padrão para VS agora, e nós não têm qualquer material nAnt específicos do que se preocupar.

Os MSBuildCommunityTasks são uma boa de terceiros base de tarefa para começar, e cobre a maior parte do material personalizado que eu já fiz na nAnt, incluindo VSS e suporte Subversion.

Respondeu 04/08/2008 em 16:52
fonte usuário

votos
1

CC.NET é simplesmente a tecnologia de servidor de compilação, não a tecnologia script de construção. Usamos CC.NET no trabalho para chamar muito sucesso MSBuild criar scripts sem problemas.

NAnt é uma linguagem de scripting construir mais velho e mais maduro, mas ambos são semelhantes na forma como eles funcionam. Há muito poucas coisas que eu poderia fazer em NAnt que eu não posso também fazer em MSBuild, para que ele realmente se resume a qual você está mais confortável com. Com relação a como ativo NAnt é, não vá até quando o último lançamento foi ... em vez de ir até quando a última compilação noturno foi. NAnt tende a percorrer um longo período de tempo entre os lançamentos, mas a nightly builds são geralmente muito estável.

Respondeu 29/08/2008 em 05:23
fonte usuário

votos
1

Honestamente isso depende do que se encaixa no seu ambiente melhor. Se você estiver usando uma série de ferramentas não-Microsoft, nunit, ccnet, NCover. Você provavelmente vai encontrar melhor apoio com nant. Alternativamente, se você estiver usando MSTest, TFSBuild, provavelmente você vai encontrar MSBuild um ambiente melhor. Eu iria aprender tanto e usar que todo se encaixa de forma mais suave com o seu ambiente.

Respondeu 04/08/2008 em 16:37
fonte usuário

votos
0

Acho que você também pode usar uma abordagem híbrida também, especialmente em projetos maiores. Um monte de nossos scripts nant estão sendo convertidas para msbuild quando novos componentes são desenvolvidos. Ambos suportam as mesmas características principais e pode chamar uns aos outros, se você encontrar uma tarefa que é suportado nativamente em um, mas não o outro.

Para nova partida de desenvolvimento .NET com MSBuild você pode economizar muito tempo desde que ele pode executar a solução arquivos diretamente. Estendendo-se desde a compilação principal para executar outras tarefas (controle de origem, implantação, etc) funciona muito bem.

Respondeu 29/09/2008 em 15:00
fonte usuário

votos
0

Como o que tantas pessoas já indicado, a resposta aqui é "depende". Há algumas coisas como operações repetindo que são muito mais simples e mais limpo em NAnt. Veja os fóruns do MSDN para uma discussão sobre isso.

Respondeu 04/09/2008 em 21:52
fonte usuário

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more