2015-08-06 7 views
7

Jak ustawić domyślne środowisko w Spring Boot?Jak ustawić domyślne środowisko w Spring Boot

umieścić w application.properties:

spring.profiles.include=prod,dev 
spring.profiles.active=prod 

i zmiennych użytkowniczki:

SPRING_PROFILES_ACTIVE = dev 

więc kiedy dev w moim komp moje środowisko są dev, ale kiedy generują moje .war i wdrożyć w Tomcat on nadal używasz dev ze środowiskiem (używam w innym kompu bez żadnego innego conf)

Jak ustawić domyślne środowisko (jeśli nie znajdzie żadnych zmiennych użytkownika lub linia produkcyjna wykorzystuje produkcję)?

Odpowiedz

4

Spójrz na prowadnicy Boot Wiosna na profilu specyficzne właściwości

http://docs.spring.io/spring-boot/docs/1.3.0.BUILD-SNAPSHOT/reference/htmlsingle/#boot-features-external-config-profile-specific-properties

by usunąć to, co masz ze swoimi application.properties. Mówisz, aby dołączyć (nie zastąpić) zarówno profile programistów, jak i prod. O wiele łatwiej jest mieć setup

  1. application.properties (jeśli nie jest ustawiony profil)
  2. application-dev.properties (dla profilu dev)
  3. application-prod.properties (dla profilu prod)
+0

jst Nie rozumiem dzisiaj Umieściłem SPRING_PROFILES_ACTIVE = dev w moich zmiennych systemowych Windows, ale kiedy uruchamiam bootRun, Spring otrzymuję moją config od application-prod.properties i usuwam 2 linie z pliku application.properties, ale wiosna wciąż się pojawia od prod. –

+0

Czy jesteś pewien, że pochodzi on od aplikacji-prod, a nie od application.properites? Jesteś także pewien, że zmienna Windows jest ustawiona poprawnie? Powinieneś być w stanie wydrukować wartość tej zmiennej, aby potwierdzić jej wartość. – jst

+0

w mojej aplikacji.properties Mam tylko to: server.contextPath =/portalservicosback spring.main.show_banner = false spring.jackson.date-format = dd/MM/rrrr HH: mm: ss spring.jackson.deserialization .UNWRAP_ROOT_VALUE = true spring.jackson.mapper.USE_ANNOTATIONS = true logging.file = portalservicosback.log –

1

czego potrzebujesz to:

1) Określić aktywny profil trzeba, coś jak:

spring.profiles.active=dev 

W tym przykładzie plik załadowany będzie application-dev.properties

Teraz, jeśli trzeba, aby przełączyć się do innego środowiska, w zależności gdzie jesteś instalowania pliku war, co można zrobić, to ustawić tę zmienną jako zmiennej systemowej w każde środowisko chcesz, w ten sposób każde środowisko ma inną wartość dla tego samego klucza, coś jak:

-Dspring.profiles.active=dev 

W moim przypadku używam Tomcat i Oświadczam ten klucz/wartość w pliku setenv.sh, trzeba przypisz tę wartość w zależności od serwera, z którego korzystasz.