2016-06-22 10 views
0

Ich habe ein Spring-Boot (mit eingebetteten Tomcat 8) Projekt mit mehreren Serverkomponenten, die in mehreren env (dev/test/prod) bereitgestellt werden Wie können Sie ein Glas, das kann in env so implementiert werden, dass das jar in jeder Umgebung die entsprechenden env-Parameter wie db und andere Server-URLs aufnimmt, die jede env verwenden sollte. Das Ziel besteht nicht darin, die JAR-Datei zu berühren, wodurch der QA-Prozess ungültig wird. Wenn es sich um eine traditionelle Bereitstellung handelt, ändere ich normalerweise ein Flag in der Eigenschaftendatei, um anzuzeigen, dass das env und der Rest der Eigenschaften basierend auf diesem Parameter gelesen werden.Spring Boot-Projekt mit integriertem Tomcat und mehreren Umgebungen

+1

sollten einen Blick auf Federprofile: http://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-profiles.html * "Spring Profile bieten eine Möglichkeit zur Entmischung Teile Ihrer Anwendungskonfiguration und machen sie nur in bestimmten Umgebungen verfügbar. "* – Sid

+0

@Sid Vielen Dank. Das hilft –

Antwort

2

Sie Ihre JAR-Paket (oder Krieg) als mvn package und dann eine -D.spring.profiles.active Parametereinstellung Ihrer Umgebung hinzufügen auszuführen: so etwas wie: mvn spring-boot:run -Dspring.profiles.active=dev

prüfen this und this Dokumentation.