Ci sono convenzioni di formiche simili alle convenzioni di Maven2?
-
03-07-2019 - |
Domanda
Negli ultimi 2 anni (ish) ho usato Maven2 per la mia build / integrazione continua soluzione. Ho usato Ant un po 'prima, ma in realtà non ho avuto molta esperienza con esso. Ora ho preso un nuovo lavoro e il team in cui mi trovo ora usa Ant.
Quello che mi chiedo è questo:
In Maven abbiamo avuto convenzioni di directory per separare i nostri sorgenti java e file e file di test java ( JUnit ). Sembrava così:
Project-
-src/main/java
-src/test/java
In questo modo i tuoi test sono separati dal tuo codice sorgente / di produzione e non saranno costruiti / distribuiti come tali.
Esaminando la documentazione di Ant non vedo davvero alcuna convenzione per questo. Mi sto perdendo qualcosa? Esiste una convenzione simile in Ant?
Soluzione
La mia esperienza con ant - che è il nostro strumento di compilazione principale per i sorgenti Java, quindi fate di questo ciò che volete - è che non esistono tali convenzioni formali . Molti progetti sorgente che ho visto organizzano le cose in modo simile; JBoss usa & Lt; module & Gt; / src / main per le fonti, ecc ... Ant usa solo le convenzioni che desideri, il che lo rende uno strumento ideale per integrarsi in un più ampio framework di costruzione di progetti.
Ad ogni modo, le convenzioni di Maven funzionano bene per Ant, quindi se le hai già messe in atto, riutilizza le stesse strutture. Non solo è più facile per te tenere traccia di dove sono le cose, quando usi una struttura familiare, ma se decidi di trasformare il progetto, sarai già pronto.
Altri suggerimenti
Molte convenzioni / buone pratiche ANT sono spiegate in ANT in Anger
Una risorsa più vecchia ma bene secondo me sono ant-best-practice .