【发布时间】:2013-01-15 08:54:27
【问题描述】:
我创建了一个包,通过导入其他程序员的代码来使用它。 我的程序使用其他 jar 文件进行 XML 解析,我不希望其他人担心依赖关系 确保我的 jar 文件始终获得其依赖项的最佳方法是什么?
- 我应该在我的原始 jar 中包含依赖项吗?
- 还有其他方法吗?
【问题讨论】:
-
见 mvn 解决方案stackoverflow.com/questions/9812209/…
我创建了一个包,通过导入其他程序员的代码来使用它。 我的程序使用其他 jar 文件进行 XML 解析,我不希望其他人担心依赖关系 确保我的 jar 文件始终获得其依赖项的最佳方法是什么?
【问题讨论】:
我想说最干净的解决方案是使用 bulid 脚本,例如使用 Ant 或 Maven。在 Maven 中,您可以创建一个名为 mayank 的本地存储库。现在,您的所有团队成员只需要包含依赖项 mayank;所有其他依赖项将自动下载。他们不必担心其他任何事情。
【讨论】:
如果您想以 zip 存档的形式发布您的源代码,我会将依赖项保留在项目 jar 之外。例如在文件夹名称 lib 中。
我会使用像 Maven (http://maven.apache.org) 这样的构建工具来管理我的依赖项。设置像 Nexus (http://www.sonatype.org/nexus) 这样的存储库非常容易,您的团队成员可以在其中获取您的 jar 和所有必需的依赖项。
【讨论】:
使用jarjar,似乎完全符合您的要求,不会强迫您的潜在用户完全使用 Maven(有些可能使用旧的 Ant 脚本或 IDE 功能直接添加 .jar 文件)。
【讨论】: