我有三个项目,我们在 RAD (Eclipse) 中称它们为 A、B 和 C。A 是一个简单的 java 项目,其中包含 B 和 C 都将使用的支持代码。B 和 C 都是将在 WebSphere 上运行的 webapp。
我写了 B,其中包含 A 作为构建路径中的项目引用,并将其包含在部署程序集中以作为 jar 放置在 web-inf/lib 中。这或多或少完美地工作。
C 是其他人编写的预先存在的项目,我必须对其应用相同的代码。我尝试了同样的技巧(我想),虽然它在编译时找到了 A,但当我发布到测试环境类时没有找到。当我导出耳朵时,我发现 C 有代表 A 的罐子,并且在类似的位置。但是,C 在 jar 的根目录中有一个 lib 目录(与战争相邻)。A.jar 在其中一场战争的 lib 中。
我从未在其他部署中看到过这个额外的 lib 文件夹,并且一直在搜索设置并且不知道它来自哪里。
所以我的问题是:1)有谁知道是什么产生了那个根 lib 文件夹,但更重要的是...... 2)知道为什么找不到我的类......我认为这个额外的 lib 以某种方式把它搞砸了,但是A.jar 位于 C.war 的 web-inf/lib 中。