apache / apache/servicecomb-java-chassis

Java-Chassis是否会考虑给spring bean xml文件限定更明确的扫描范围?

Offen
#3,740 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Vorherrschende Sprache
Java
Sterne
1.9k
Forks
814
Ø Merge
8 T. 23 Std.
Gemergte PRs (30 T.)
1

Beschreibung

https://github.com/apache/servicecomb-java-chassis/blob/21d4b4863b71332f151eb63020f4e9ac51583002/foundations/foundation-common/src/main/java/org/apache/servicecomb/foundation/common/utils/BeanUtils.java#L39-L44

如上述代码片段, 当前 Java-Chassis 允许业务配置的 Spring bean xml 文件路径为 `META-INF/spring/*.bean.xml` , 这个比较宽泛, 而且跟 Java-Chassis 框架看不出关系, 不利于业务部门集成 Java-Chassis 做二次封装开发时预置 xml 文件扫描配置. 如果重复扫描了, 就可能导致 Spring 因重复加载同一份 xml 文件而报错.

像`DEFAULT_BEAN_CORE_RESOURCE`定义的bean文件名就能看出来是 Java-Chassis 框架的配置, 不容易跟其他框架冲突. `DEFAULT_BEAN_NORMAL_RESOURCE` 能否也改为更精确的配置, 比如`META-INF/spring/*.scb.bean.xml`这样的呢?

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Rechercherichtung

Beginne mit foundations/foundation-common/src/main/java/org/apache/servicecomb/foundation/common/utils/BeanUtils.java in den Zeilen 39-44 und vergleiche DEFAULT_BEAN_CORE_RESOURCE mit DEFAULT_BEAN_NORMAL_RESOURCE. Ermittle, wie das Ressourcenmuster für normale Beans eingegrenzt werden sollte, um Kollisionen mit geschäftlichen XML-Dateien zu vermeiden; abgeschlossen ist die Aufgabe, wenn der Standardscan das spezifischere Java-Chassis-Benennungsmuster ohne doppeltes Laden verwendet.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
java, spring
Bereich
backend
Issue-Typ
Feature
Schwierigkeit
2/5
Geschätzter Aufwand
1-3 Stunden
Aktivitätsstatus
Veraltet
Klarheit
Klar beschrieben
Anfängerfreundlichkeit
45/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.