多个项目使用的例外情况应该放在哪里?

时间:2013-04-23 15:39:41

标签: java exception

我需要将具有两个数据模型的项目重构为两个单独的项目。 两个项目都使用相同的例外。 我应该仅为这些例外创建第三个项目吗?克隆听起来像是不行。

4 个答案:

答案 0 :(得分:7)

是的,你应该在一个单独的项目上创建它,并将其用作对其他项目的依赖。看到一个项目/ jar只有你使用的模块中使用的例外情况并不罕见。这是保持组织的好方法恕我直言。

答案 1 :(得分:1)

恕我直言,正如@harsha在现有评论中提到的,最简单的解决方案是将共享代码放入库或.jar文件,将.jar文件放入项目库。

现在您拥有一个有价值的api,可以使用您的版本轻松维护每个版本。

答案 2 :(得分:1)

另一个项目是另外两个项目的共享依赖项,可能是最好的。如果两个数据模型一起使用,那么复制对象会使事情变得困难,您必须通过例如两个数据模型来解决这些问题。不同的包名称,这会产生维护问题。除了您的例外之外,共享项目可能是未来共享代码的良好存储库。

答案 3 :(得分:1)

是否只有例外情况?这听起来很奇怪。

这些项目之间是否存在依赖关系?一个人是其他人的客户吗?

我相信也会有一些共同的接口,有些接口会在方法的签名中声明这些异常。一些在你的一个项目中实现,并在其他项目中调用。

如果根本没有这样的东西,看起来你的常见例外只是他们的名字的共同点!它们实际上不是同一个类,它们只是具有相同的名称,并且因为许多用户定义的异常只是具有调用super构造函数的构造函数,所以它们似乎是相同的。

如果那是你的情况,我不会费心去提取类,我会保留重复,因为重构没有任何好处。