Maven: include-resource-Datei basierend auf Profil
Ich die Umwandlung eines Ant webapp-Projekt über Maven. Ich habe die meisten, dass es funktioniert, aber ich bin stecken versuchen, herauszufinden, wie zu kopieren Ressource-Dateien aus unterschiedlichen Quellen basierend auf dem Profil.
Habe ich src/main/resources/persistence-{dev, prod}.xml
. Eines dieser Bedürfnisse zu sein eingeschlossen in die war-Datei als WEB-INF/classes/META-INF/persistence.xml
.
Ich würde gerne die dev-version kopiert werden, wenn die dev-Profil aktiv ist, und die prod-version, wenn prod aktiv ist.
- Ich glaube nicht, dass die maven-resources-plugin sein problem zu lösen, weil soweit ich weiß ist dieses plugin nur oder exludes Dateien nicht kopieren, und benennen Sie Sie.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Verwenden Sie einfach die maven-resources-plugin wie so http://maven.apache.org/plugins/maven-resources-plugin/examples/include-exclude.html und haben eine Eigenschaft, für die der Dateiname oder die Erweiterung in einem Profil.
persistence.xml
ist der geeignete Weg.Wenn Sie sind nicht verheiratet, das Paradigma mit 3 separaten persistence.xml Dateien und kopieren eine oder andere selektiv, können Sie mit maven-Profilen, die mit filtern wie diese (nur implementiert, dies den anderen Tag und heute kam in Ihrem post):
In persistence.xml:
In pom.xml erstellen Sie ein Profil und definieren Sie die variable:
definiert einen Standard für, wenn Sie bauen, ohne Angabe eines Profils:
und.... stellen Sie sicher, dass Sie auf Ressource Filterung:
Dann bauen Sie mit mvn -Phib-debug-und voila! Substitution erfolgt.