在Ear project Structure Eclipse下的两个Java Dynamic Web项目之间共享src文



我只是想澄清和知道,我们如何在Ear项目下的项目之间共享代码库,以下是我的项目布局

我有一个EAR项目,其中添加了两个appengine动态web应用程序项目,如app1和app2

我在app1中有我所有的模型java类和服务类,现在我不想在app2中重写或复制这些文件,我只是想在app2中使用这些类。

注意: 我不使用maven,因为(maven + appengine + eclipse)有很多问题,我不想把事情复杂化。

简而言之,两个web应用项目共享src文件夹或其中的一部分,是可能的吗?

任何帮助都是非常感激的,谢谢!

在我看来,是的,这是可能的,并且在自己的项目中外包库以共享它们通常是有意义的。

在Java (EE)项目中包含资源的相关位置是:

    Java构建路径
  1. Eclipse中的链接资源列表
  2. Eclipse中所引用的库设置
  3. application.xml、web.xml或其他servlet容器特定文件中的条目。

此外,您可以使用到文件夹或源文件的文件系统链接。

在Eclipse项目设置中哪一个有用且可见取决于项目类型、Eclipse版本和插件以及servlet容器。xml文件中的一些条目由Eclipse设置对话框管理,其他条目则不是。

在你的情况下,我建议你创建一个新的库项目,比如"appLib",并把公共代码放在那里。它只包含app1和app2通用的代码。然后将来自app1和来自app2的项目引用添加到appLib。

像这样的链接可能也很有帮助:如何使用ant将jar文件包含到ear文件的lib文件夹中?

如果您共享这样的库,您可能会遇到这样的情况:由于app1的需要而更改库,然后您必须再次测试app2,因为编辑对app2可见,反之亦然。从而将错误从一个项目转移到另一个项目。这可能会很有压力。最后,最好为库提供一个版本化的源代码库,并签出源代码并将其包含到app1和app2项目中。因此,您可以更改一个应用程序和库,而不会立即干扰其他应用程序,然后将源代码合并到稍后控制的库中,避免干扰的副作用。

Hth: -)

您不能在两个war文件之间共享代码,也不应该这样做。

你必须将共享的代码移到jar项目中,这是正确的方法。

如果你没有maven,你可以用ant文件来做

最新更新