有一个带有依赖关系的常见maven模块 . 还有另外两个maven模块依赖于公共模块但使用其不同的功能,因此不需要将公共模块的所有jar都包含在它们的工件中 .
我想为每个模块打包最佳工件,这些工件将包含普通模块所依赖的真正使用的库 .
我正在使用Intellij IDEA 14,Linux .
理想的答案是将您的公共模块拆分为子模块,每个模块都紧紧围绕一个区域,并只导入您需要的子模块 .
如果这是不可能的,那么Nitin的链接问题有一个答案,使用排除来删除不需要的 jar . 确定可以安全地排除哪些依赖项可能是一个挑战,特别是如果您在运行时可能提供错误版本的依赖项的应用程序服务器上运行 .
1 回答
理想的答案是将您的公共模块拆分为子模块,每个模块都紧紧围绕一个区域,并只导入您需要的子模块 .
如果这是不可能的,那么Nitin的链接问题有一个答案,使用排除来删除不需要的 jar . 确定可以安全地排除哪些依赖项可能是一个挑战,特别是如果您在运行时可能提供错误版本的依赖项的应用程序服务器上运行 .