2013-01-18 7 views
5

Questa sembra una domanda stupida ma sono davvero confuso da questo. Non ho mai usato Maven, ma so che è usato per costruire progetti.differenza tra il progetto di costruzione usando Maven e l'esportazione di eclissi come Jar

Quindi, ho una domanda: perché c'è bisogno di costruire un progetto usando Maven quando possiamo costruire un progetto in Eclipse (senza Maven). Esportando semplicemente il progetto eclipse come JAR e includendo le librerie richieste e tutto.

Supponiamo di scaricare qualsiasi progetto da github. Ora posso importare quel progetto in eclissi ed esportarlo come JAR e usarlo come funzionalità. Quindi, perché tutti suggeriscono di usare MAVEN per costruire progetti e generare binari e usarli.

+1

Una cosa è che tutti i principali IDE in questi giorni hanno un buon supporto Maven. Questo significa che puoi scegliere il miglior IDE per ogni lavoro dato, invece di essere in grado di usare Eclipse. –

+0

A mio parere, alcuni IDE hanno un supporto di gran lunga migliore per Maven rispetto ad altri (Eclipse è ancora dietro IntelliJ e Netbeans). –

risposta

8

Prima di tutto, non tutti usano Eclipse (anche nella stessa squadra), e IDE diversi potrebbero produrre artefatti leggermente diversi (file JAR).

Un vantaggio di Maven è che non si limita a costruire progetti:

  • si prones convenzione sulla configurazione, e suggerisce un layout "standard" per i progetti
  • permette la raccolta di tutte le dipendenze necessarie nella vostra progetto, utilizzando versioni specifiche (al contrario di avere qualcosa come "lib/log4j.jar", nessuna versione è specificata)
  • consente di creare molti artefatti diversi: JAR contenenti codice compilato o codice sorgente, javadoc, WARs, ecc.
  • può b e corro fuori del proprio IDE, molto spesso sul server

continuous integration mi consiglia di utilizzare Maven anche per piccoli progetti :)

5

Perché presto vorrai costruire il tuo progetto automaticamente, utilizzando strumenti automatici e non ci sarà Eclipse per aiutarti.

roba Possibile dovrai presto:

  • genera il progetto in ogni commit al repository
  • genera il progetto su un singolo clic da qualche parte in uno strumento di integrazione continua UI
  • gli utenti non possono conoscono o si preoccupano di Eclipse, ma sanno come utilizzare un'interfaccia utente per il rilascio di una build
+0

+1 Semplice e preciso –

4

si supponga un semplice scenario in tempo reale

Ambiente di sviluppo -> Ambiente di produzione (lasciare test ora)

In ambiente di sviluppo, si disporrà di tutti gli strumenti di sviluppo per ridurre i tentativi di scrittura e dedicare più tempo all'elaborazione della logica.

Una volta che hai finito con la parte, la controllerai in un controllo di versione.

Questo dovrebbe passare alla produzione ora. Verifichi la versione più recente dal controllo di versione alla produzione

Ora, non puoi eclissi anche qui! Dato che non svilupperai nulla. In questo caso, verrà utilizzato sempre un semplice pom.xml e lo strumento chiamato Maven

Non sempre, lo sviluppatore preparerà i file binari. Quindi, supponiamo che qualcuno che non è uno sviluppatore stia implementando l'app. Invece di chiedergli di aprire l'eclisse e dire esportazione blah blah blah, puoi solo dire, esegui questo comando/file batch. File batch che ovviamente contenere i comandi Maven (mvn compilazione, pacchetto mvn) ecc

Infine Eclipse è quello di ridurre i tempi di sviluppo brevi per gli sviluppatori, perché, u può finire per correre ripetutamente maven, causa semplicemente di battitura -s che può essere abbreviato da eclissi. In produzione, una volta, esegue un file batch. La tua app è distribuita

+0

grazie per la rapida risposta. – pradeep

+0

puoi suggerirti un buon tutorial per l'apprendimento di Maven e la creazione di progetti usando Maven che sviluppo in eclissi. – pradeep