Ecco un profilo di esempio nel mio POM:Come posso eseguire una webapp Maven in Eclipse quando utilizzo i profili per popolare i file delle proprietà al momento della compilazione?
<profiles>
<profile>
<id>QA</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<jdbc.url>jdbc:mysql://127.0.0.1:3306/SomeDB</jdbc.url>
<jdbc.username>webapp</jdbc.username>
<jdbc.password>somepassword</jdbc.password>
</properties>
</profile>
...
poi ho un file di proprietà nella mia cartella risorse in questo modo:
jdbc.url = ${jdbc.url}
jdbc.username = ${jdbc.username}
jdbc.password = ${jdbc.password}
e alla fine ho girare il filtraggio nella mia POM:
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
</resource>
</resources>
...
Questo è in realtà un esempio semplificato, ma si ottiene l'idea. Fondamentalmente quando corro
mvn installare -P QA
Maven filtrerà mio file app.properties, sostituire tutti i segnaposto con i valori contenuti nel profilo, e distribuire il file delle proprietà popolate.
Il problema di tutto questo è che mi piace utilizzare il meccanismo Server in Eclipse, dove Tomcat è in esecuzione all'interno dell'IDE. I miei progetti vengono eseguiti in questa istanza ed Eclipse si occupa dell'aggiornamento, della ridistribuzione e così via. Maven viene lasciato fuori dall'immagine, tuttavia, durante le distribuzioni all'interno dell'IDE e questo file delle proprietà non viene mai compilato correttamente.
Quindi, come posso continuare a eseguire il mio progetto all'interno dell'IDE, ma questo file delle proprietà è correttamente compilato?