2009-06-10 18 views
12

Utilizzo NAnt da un po ', ma sembra troppo complesso per quello di cui ho bisogno. Mi stavo chiedendo se ci sono alternative in giro per la costruzione di progetti C#?NAnt Alternative

risposta

4

Direi che una volta iniziato in NAnt non è COSÌ complesso. Mi mancava un po 'il tutorial "Let's get me started" e tutto ciò che leggevo sembrava piuttosto datato. Una cosa buona è che puoi usare MSBuild per costruire l'applicazione (è quello che sto usando) e fare il resto con NAnt.

Almeno penso che non sia più difficile di MSBuild - e per le cose di MSBuild è più facile utilizzare MSBuild per questo.

Questo è quello che sto usando:

<exec program="msbuild.exe" 
     basedir="C:\windows\microsoft.net\Framework\v3.5\" 
     commandline="Project.csproj /p:OutDir=..\Outdir\; configuration=Release" /> 
1

C'è MSBuild, ma non è più semplice di Nant.

Entrambe vanno bene una volta che ci si abitua alla sintassi.

Un'opzione più semplice consiste nell'utilizzare i file batch.

Un altro è utilizzare CIFactory, che fornisce un modo rapido per ottenere un server di integrazione continuo e di compilazione attivo e funzionante.

2

Si potrebbe provare FinalBuilder - è molto facile da usare, anche se preferisco rimanere con NAnt. E hai sempre MSBuild ...

+0

Mi piacciono anche questi strumenti, come [Visual Build] (http://www.kinook.com/VisBuildPro/) ma sono commerciali e richiedono l'installazione di un intero lotto di file sul tuo sistema. Non preoccuparti nemmeno di eseguirli su un altro sistema operativo. – Wernight

-2

Maven è un grande strumento di costruzione, è stato sviluppato principalmente per la comunità Java, ma ora c'è un .NET plugin per la costruzione di progetti di C#. Ci sono delle differenze concettuali piuttosto grandi tra Maven (see wikipedia per una breve panoramica) e NAnt quindi potresti voler leggere il primo se vuoi provarlo.

2 caratteristiche interessanti:

  • raccolta matura di plugin per fare le operazioni più comuni come i test, generazione doc, la distribuzione ecc
  • può ottenere automaticamente le dipendenze di progetto per voi da una central repository
4

Ora ci sono alcune grandi alternative a NAnt e MSBuild.

nRake (o solo Rake)

http://jamescrisp.org/2010/03/20/nrake-rake-builds-for-net/

psake - costruire strumento di automazione scritto in PowerShell

http://jameskovacs.com/2008/06/27/introducing-psake/

ho usato personalmente NAnt e MSBuild e sto aspettando con ansia il nostro prossimo passaggio a uno di questi (non abbiamo ancora deciso quale). NAnt e MSBuild non sono che è difficile da avviare, ma una volta che gli script di compilazione iniziano a diventare più grandi e più complicati e devi eseguirne il debug in realtà, diventano un enorme fardello da gestire. Dipende davvero da quanto stai automatizzando.

+0

So che questo è un vecchio post, ma hai mai scelto un nuovo processo di compilazione? –

+1

@MrAH, ora consiglio vivamente sia Grunt che Gulp. Personalmente preferisco Grunt ma Gulp ha avuto molte più conversioni/attenzioni recentemente. –

-1

Phantom è un'alternativa molto accurata per C#.Vorrei che fosse in python (più portatile) e più usato perché la sintassi è molto accurata e potente.

0

Stiamo esaminando Cake - il più grande vantaggio è che è fondamentalmente C#.
Con il processo complesso che abbiamo oggi è abbastanza difficile mantenere i nostri script NAnt utilizzati per costruire, pacchetto e il codice etichetta, nonché test di unità runnig, copertura del codice, l'analisi statica ecc ..
Vedi anche Why should you use a general purpose scripting language for your build scripts?
Poiché la maggior parte delle il nostro codice è C# piuttosto usiamo C# ...