1

我是一个团队的一员,该团队正在开发一个受 ClearCase 版本控制的项目。这个项目是一个 EAR,并且 4 个 WAR 作为 EAR 的一部分。由于所有 WAR 都使用相同的 JAR,我们将它们存储在 EAR 的 \lib 文件夹中,然后对于每个 WAR,我们在每个 WAR MANIFEST.MF 的 EAR\lib 文件夹中引用 JAR。

通常发生的情况是另一个开发人员添加或删除了一个 JAR(比如将 MyJar-1.0.0 更改为 MyJar-1.1.0)并更新每个 WAR 中的所有 MANIFEST.MF 文件。然后他们将这些更改检查到 ClearCase 中。

但是,在我更新我的视图后,RAD 无法识别新的 MANIFEST.MF 文件,这些文件已被带到我的视图中。解决此问题的唯一方法是打开每个 WAR 的属性,进入 J2EE 模块依赖项选项卡,取消选中随机 JAR(提示用户签出 MANIFEST.MF、.classpath 和 .project),单击应用(其中保存清单),然后重新检查 JAR,并再次点击应用。那时,只有那时,我才能进行清洁而不会出现任何错误。

我已经尝试了一切,劫持了清单,对清单进行了无保留的结帐。没什么,看起来 RAD 正在缓存清单或其他东西,这是让它通过 J2EE 模块依赖项选项卡识别清单已更改的唯一方法。

任何人都可以帮忙吗?EAR 中的所有 WAR 共享相同的 JAR 至关重要。RAD 中是否有一些我不知道的隐藏设置,或者可能是在中心位置引用 JAR 的更好方法?

4

1 回答 1

0

我不熟悉 RAD,但我确实将 Jar/War 存储在 ClearCase 中,没有版本号,这意味着我们的MANIFEST.MF文件不会经常更改。

话虽如此,这篇IBM 文章引用了一些方法来包含那些可能值得一试的 MANIFEST 更新的 Jar/War 文件。

  • 要么通过 ClearCase 上未引用的公共项目引用它们,并且仅包含 Jar/War 文件。您自己的项目将在“Jar Dependency Editor”设置的“Dependencies”部分中包含公共项目。

替代文字

(希望通用项目能够以比您当前对版本化项目的体验更动态的方式进行自我更新)

  • 或者您可以尝试直接引用这些文件,但通过链接的资源变量:

替代文字

并检查是否效果更好...

于 2010-02-05T05:14:22.463 回答