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
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" />
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.
Si potrebbe provare FinalBuilder - è molto facile da usare, anche se preferisco rimanere con NAnt. E hai sempre MSBuild ...
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
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.
So che questo è un vecchio post, ma hai mai scelto un nuovo processo di compilazione? –
@MrAH, ora consiglio vivamente sia Grunt che Gulp. Personalmente preferisco Grunt ma Gulp ha avuto molte più conversioni/attenzioni recentemente. –
Phantom è un'alternativa molto accurata per C#.Vorrei che fosse in python (più portatile) e più usato perché la sintassi è molto accurata e potente.
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# ...
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