5

我有两个 .Ear 文件,即 A.EAR 和 B.EAR。第一个文件是我的应用程序(大约 1.5 MB),第二个文件包含所有需要的库,例如 Hibernate、log4j 等(大约 70 MB)。我如何将它们部署在 weblogic 上,以使我在 A.EAR 中的代码使用 B.EAR 中的库?

  1. 我无法将它们打包到一个 .EAR 文件中,因为我需要每周通过电子邮件发送我的应用程序。在发送电子邮件时,我只发送 A.EAR 文件。
  2. 我不能将使用的库放在libweblogic 的文件夹中,因为其他应用程序使用不同的库版本。

编辑:

找到正确答案后,似乎这个关于 SO的 Q 在某种程度上是相关的。

4

2 回答 2

4

您可以将 B.ear 定义为共享应用程序库并从 A 访问它

http://docs.oracle.com/cd/E17904_01/web.1111/e13706/libraries.htm#i1065356

于 2012-10-25T11:52:03.717 回答
0

这可能不是您问题的直接答案,但我会根据“每周通过电子邮件发送应用程序”的需要来设计实际可部署应用程序的结构(即,将其拆分为多个 EAR 文件)。

对我来说,一个应用程序有 2 个单独的 EAR 文件似乎很危险。我了解您说 B.EAR 包含不变的库(Hibernate、log4j)。但是,通过在 A.EAR 中使用它们,它们会继承地与您的应用程序密切相关。换句话说,您的应用程序确实是 A+B ... A.EAR 不能没有 B.EAR。

相反,您是否可以设置某种修订/源代码控制存储库(SVN、Git 等)并使用 Ant/Ivy 或 Maven 来管理您的依赖项?

这样,任何需要应用程序副本的人都可以访问存储库、拉取源代码、允许 Ant/Ivy 解决依赖关系并进行构建。

于 2012-10-24T19:11:37.660 回答