0

我正在寻找有关 Spring jar 配置的某种“最佳实践”信息。我有一个网络项目(战争),我需要连接一些 jar 库 - 我的 jar 包含附加功能。这些 jars 包含 Spring 服务。但是当我连接 jar 时,服务类不起作用,因为 Spring 不知道这一点。所以我需要通过我的 jar 中的“包自动扫描”配置来告诉 Spring。

最终的解决方案必须是战争项目(主要功能)和一些包含其他功能的附加 jars。当我将 jar 添加到战争项目中时,我不想更改 applicationContext.xml 中的配置(在战争中)。我希望对战争项目的依赖最小。我在想,如果我将 applicationContext.xml 放在 jar 中的 META-INF 文件夹中,它将由 Spring 自动加载,但事实并非如此。

你知道我该如何解决这个问题吗?可能是某种“启动后动态配置”:-)。谢谢

4

1 回答 1

0

如果您尝试将带注释的 bean 从 jar 加载到您的 war 的 Spring 上下文中,您可以在 war 的上下文 xml 文件中设置组件扫描以扫描 jar 中的包。

如果您尝试从 jar 加载 XML 文件中定义的 bean,您可以在您的 war 的 Spring 上下文 xml 文件中使用类似这样的内容包含它们:

<import resource="classpath:path/to/config/in/jar/beans-from-jar.xml"/>

你不应该以这种方式让你的罐子知道关于你的战争的任何事情。您只需扫描带注释的 bean 和/或从 jar 导入配置。

于 2011-10-02T22:42:23.330 回答