如果我们要构建一个庞大的java类库,那么什么时候最好将它们拆分成单独的jar文件呢?
我的理解是拥有一个大的jar文件不应该显着影响JVM的性能。但是,如果在对jar进行更改或添加时运行一整套冗长的测试,则会产生一些开发成本。使用带有maven和archiva的大型jar文件时是否有成本或收益?
人们在实践中使用什么策略?
答案 0 :(得分:4)
仅考虑变更管理方面,其余部分可以忽略不计。 Jar文件决定了最小的易于释放的单位。
答案 1 :(得分:1)
我们希望将我们的罐子分成更小,更易于管理的单元。每个jar都专门用于执行任务的子集。当我们开发一个应用程序时,我们只会将它所需的罐子放入其中,而不是一个装有所有东西的大罐子。
我们有安全,用户界面,一般结构和界面,本地化以及一系列特定于我们行业的其他东西的罐子。
答案 2 :(得分:0)
逻辑上单独的jar项目层,没有循环依赖关系,一层只依赖于前面的层。
尽可能(除了项目名称)提供IDE中列出的描述性名称,保留项目顺序的一种方法是使用缩写和数字前缀: