Abbiamo la seguente struttura di progetto in SVN con un progetto principale (non aggregatore) che definisce la configurazione comune. Il genitore è gestito e rilasciato individualmente.Maven URL SCM relativo al genitore
trunk
+parent
pom.xml
+project1
pom.xml
+project1_1
pom.xml
+project1_2
pom.xml
+project2
pom.xml
Quindi, in pratica ogni vero e proprio progetto (project1, project2) è usato come un aggregatore per le sue sotto-progetti. Le impostazioni di configurazione comuni (versione Java Compiler, altri plug-in) sono mantenute nel genitore, che viene utilizzato come Maven parent
in tutti i progetti (progetto1, progetto2).
Una delle impostazioni che vorrei definire nel genitore è l'URL SCM per Subversion, ad es. http://svnhost/base/trunk/parent
nel padre pom.xml.
Quando faccio questo, i singoli progetti ereditano questa impostazione, ma ovviamente non riflettono la natura relativa del percorso. Nel progetto , questo è risolto in http://svnhost/base/trunk/parent/
- L'ho verificato con mvn help:effective-pom
.
C'è un modo per specificare la connessione SCM in modo che sia risolto rispetto al genitore? O devo fornire l'URL SCM in ogni singolo progetto?
Grazie - anche queste sono le mie scoperte. Penso che definirò semplicemente l'URL SCM in ogni progetto di aggregatore di primo livello (progetto1, progetto2 nel mio esempio), dal momento che non otterrò molto dall'uso delle variabili. – nwinkler