2009-05-23 11 views
8

È passato un po 'di tempo da quando ho sviluppato C++ in modo professionale e mi piacerebbe essere coinvolto in quello che è lo sviluppo attuale del C++ in diverse aree. La maggior parte del mio recente lavoro è stato Java, facendo un uso pesante di Maven. Quando ho terminato lo sviluppo di C++ per lavoro, una variante di make è stata ampiamente accettata come la strada da percorrere per la creazione di progetti C++ (stavamo anche usando make per creare il codice Java nei nostri progetti misti Java e C++, anche se credo che ant fosse iniziando a diventare mainstream).Il plug-in maven nativo è ampiamente utilizzato per creare progetti C++ usando maven?

Mi piace usare Maven per le build. La mia domanda non è quella di discutere i meriti relativi dell'uso di Maven, ma di determinare quale sia il livello di adozione per lo Native Maven Plugin per la creazione di progetti C++ e quale sia stato l'esperienza delle persone con questo. In alternativa, c'è una nuova toolchain comune per le build C++ che ha un sacco di slancio?

risposta

9

Nella mia esperienza, la comunità C++ non è ancora standardizzata su uno strumento di compilazione comune. Mentre gli autotools GNU (e GNU make) sono ancora popolari per i progetti Open Source, altre opzioni includono SCons, CMake, makepp e bjam/jam.

Personalmente, userei solo Maven per un progetto scritto principalmente in Java con una piccola parte JNI.

3

La nostra esperienza con il plug-in maven nativo è che si integra molto bene con la catena di strumenti Java. Se costruisci sistemi misti java/C++, allora è il plug-in per te. Grazie a questo plugin, i nostri sviluppatori C++ e Java hanno lo stesso ambiente (maven, eclipse, hudson) e una gestione delle dipendenze centralizzata (nexus). Sul lato negativo, molte delle nostre correzioni (prestazioni legate all'elevato volume della nostra base di codice, diverse milioni di righe di codice) non sono state integrate alla versione principale che ci obbliga a lavorare con una versione patch.