我们的项目中有以下模块化结构,
耳
|
|--- 网页模块
|--- ConnectorFacade
|--- 连接器
|--- 实用模块
|--- BPEL 模块
还有其他模块也可以用于理解我提到的几个模块的问题。
目前,任何简单的更改都发生在上述模块中,我们需要执行以下操作 由于我们一直将所有模块归档在单个 EAR 中,因此整个部署都在 WebSphere 应用程序服务器上。
我希望 EAR 应该与依赖模块分开,这意味着除了 Web 模块之外,其他模块应该位于 EAR 之外,这样每当连接器或任何其他模块模块发生任何更改时,我只需更新连接器 jar 并重新启动应用程序服务器,它应该选择新的类,这样就可以避免我的部署过程,并且我可以在最短的时间内准备好新的更改。
让我知道是否有管理依赖 jar 的好解决方案。
最佳答案
正如“fnt”所提到的,OSGI 可能是您问题的解决方案。
您还可以使用远程 EJB。
单独部署的 jar 中的远程服务
@Stateless
@Remote(MyRemoteInterface.class)
public class MyService implements MyRemoteService {
// Some implementations
}
共享API
interface MyRemoteService {
}
在 EAR 的某些模块中
@Stateless
public class MyBoundary {
@EJB
MyRemoteService service;
// Stuff
}
有关更多信息,请参阅here
关于java - EAR 中的依赖关系管理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17887544/