java - 导入另一个spring项目的spring项目

标签 java spring

我有两个 Spring 项目。两者目前都是 portlet。

我想拿一个并将它转换成一个 jar 并将它作为依赖项(使用 maven)添加到另一个然后调用代码)

关于这些步骤的任何建议都会很棒。

我已经尝试过,尽管所有内容(inc 上下文)都打包在我的 jar 中,但是当从使用 jar 的 portlet 中调用类时,应用程序上下文未加载/工作时出现

Current jar structure 
application-context.xml
META-INF/
<package>/classes

编辑__ 重新错误:找不到类 x 的 Bean 定义

最佳答案

有几种方法可以做到这一点,但这在很大程度上取决于您要尝试做什么。您可以在 web.xml 中包含上下文...

<context-param>
  <param-name>contextConfigLocation</param-name>
  <param-value>/WEB-INF/applicationContext.xml, classpath:childContext.xml</param-value>
</context-param>

另一种选择是直接从您的应用上下文中导入子上下文。

<import  resource="classpath:childContext.xml/>

我不太喜欢这个,因为这些上下文被合并,这对 bean 名称来说可能是一场噩梦;但是,它们确实有效。

通常情况下,您的 JAR 公开某种工厂或静态构造函数会更好,这些构造函数读取它自己的 Spring 配置 XML,然后简单地公开您想用作服务的内容。对于您的特定问题,这可能不是最佳解决方案,但值得考虑。

关于java - 导入另一个spring项目的spring项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6111228/

相关文章:

java - 使用 getCurrentThread UserName() 获取执行时间

java - Alloy - 从 .als 生成 .xml 实例

java - Java 重绘中的组合框

java - 单击运行时获取同一文件的多个选项

java - Spring Boot - YML 配置 - 合并时删除条目

java - ReactorClientHttpConnector((<no type> opt) -> {}) 未定义

java - 如何在android中以编程方式共享联系人

java - Map<Long, Entity>,如何让map key引用一个Entity Id?

java - 如何根据 application.properties 文件动态设置 importResource 路径?

spring - Tomcat 部署因 Spring 和 CXF servlet 而失败