什么是最好的jar组织策略?

时间:2012-02-16 19:55:46

标签: java maven jar archiva

如果我们要构建一个庞大的java类库,那么什么时候最好将它们拆分成单独的jar文件呢?

我的理解是拥有一个大的jar文件不应该显着影响JVM的性能。但是,如果在对jar进行更改或添加时运行一整套冗长的测试,则会产生一些开发成本。使用带有maven和archiva的大型jar文件时是否有成本或收益?

人们在实践中使用什么策略?

3 个答案:

答案 0 :(得分:4)

仅考虑变更管理方面,其余部分可以忽略不计。 Jar文件决定了最小的易于释放的单位。

答案 1 :(得分:1)

我们希望将我们的罐子分成更小,更易于管理的单元。每个jar都专门用于执行任务的子集。当我们开发一个应用程序时,我们只会将它所需的罐子放入其中,而不是一个装有所有东西的大罐子。

我们有安全,用户界面,一般结构和界面,本地化以及一系列特定于我们行业的其他东西的罐子。

答案 2 :(得分:0)

逻辑上单独的jar项目层,没有循环依赖关系,一层只依赖于前面的层。

尽可能(除了项目名称)提供IDE中列出的描述性名称,保留项目顺序的一种方法是使用缩写和数字前缀:

  • CD01 baselib
  • CD10 mathlib
  • CD30 daolib
  • CD91 xysite