2017-07-07 12 views
1

Ich erstelle einen benutzerdefinierten Spring Boot-Starter, der eine IntegrationFlow registriert/aktiviert. Dies war ursprünglich ein reguläres Projekt, aber 60% der Anpassung erfolgt durch automatische Autokonfiguration der Spring Boot-Eigenschaften auf einem YAML.Spring Boot begrenzte Autokonfiguration

Mein Problem ist, dass wenn ich es zu einem Starter verschiebe, befürchte ich, dass mein Importprojekt bestimmte Konfigurationen überschreibt, so dass die Integration nicht funktioniert.

Wie kann ich das lösen? Im Grunde möchte ich vermeiden, dass ich alle Chains von Beans und Abhängigkeiten, die Spring Boot für mich erledigt (resttemplate, , jms broker), aus Angst vor einer möglichen Existenz im Importeurprojekt in Form eines registrierten @Bean manuell erstellen und setzen muss oder eine YAML-Eigenschaft.

Idealerweise würde ich meinem Starter-Autokonfigurator sagen können, "alles auf dem Importeur zu ignorieren und einen privaten Kontext mit meinen YAML-Eigenschaften und den Inferenzen zu verwenden, als ob der Importeur nicht existiert, was für die X, Y, Z-Beans gilt Ich möchte wirklich in den Importeur Kontext @Conditional Klausel injizieren ".

+0

Hat das etwas zu tun? https://stackoverflow.com/questions/38776005/how-to-avoid-to-configure-an-external-library-by-another-library-using-spring-bo – Whimusical

Antwort

1

Wenn Sie den Prozess mit Ihrem benutzerdefinierten Starter ausführen, gibt es eine Möglichkeit, als Argument den Pfad zur Datei "properties/ym" anzugeben, aus der der Spring Boot seinen Kontext erstellt. Dies würde Ihnen versichern, dass der Kontext nur mit der Datei erstellt wird, die Sie explizit als Eingabeargument angegeben haben.

Dies würde auch bedeuten, dass Sie separate vollständige Konfigurationsdatei für Ihre Integration Starter haben.

Für einen Mix Verwendung von Yaml-Dateien, so weit ich weiß, kann Spring Boot nur eine Konfigurationsdatei verweisen. Lassen Sie mich wissen, ob diese Informationen Ihnen helfen oder ob Sie Ihre Frage vielleicht mit einem Beispielcode für Ihren Starter weiter entwickeln könnten.

+0

Ich bin mehr besorgt über die Bohnen Aspekt, seit Ich habe immer die Möglichkeit, Eigenschaften in einen benutzerdefinierten Bereich zu kopieren. Aber was ist mit meinen obejctmappers, resttemplates etc ..., die meine App benutzt, was durch das Import-Projekt beschädigt werden könnte – Whimusical

Verwandte Themen