2017-11-17 3 views
1

Bezug auf die Immobilie Auflösung von SpringBoot hier erklärt: https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-external-config.htmlAusschließen Java Systemeigenschaften und Umgebungsvariablen von SpringBoot Konfiguration

ich von dem Mechanismus ausschließen möchten:

9. Java System properties (System.getProperties()). 
10. OS environment variables. 

Ist es möglich?

Dank

+0

einen bestimmten Grund, warum Sie es tun möchten? nur um den Kontext zu verstehen – pvpkiran

Antwort

1

Sie können Ihre eigene Implementierung von StandardEnvironment bieten, wenn Ihre Spring-Boot-Anwendung Instancing.

Zum Beispiel:

public static void main(String[] args) { 
    SpringApplicationBuilder applicationBuilder = new SpringApplicationBuilder(Application.class) 
      .environment(new StandardEnvironment(){ 
       @Override 
       protected void customizePropertySources(MutablePropertySources propertySources) { 
        // do not add system or env properties to the set of property sources 
       } 
      }); 
    applicationBuilder.run(args); 
} 

Oder alternativ:

public static void main(String[] args) { 
    SpringApplicationBuilder applicationBuilder = new SpringApplicationBuilder(Application.class) 
      .environment(new StandardEnvironment(){ 
       @Override 
       public Map<String, Object> getSystemEnvironment() { 
        return new HashMap<>(); 
       } 

       @Override 
       public Map<String, Object> getSystemProperties() { 
        return new HashMap<>(); 
       } 
      }); 
    applicationBuilder.run(args); 
} 

So oder so, stellen Sie sicher, dass die Eigenschaften Ihrer Anwendung keine System- oder Umgebungseigenschaften enthalten.

Verwandte Themen