我的工作区中有5-6个项目,其中许多项目是相互依赖的。
我通常只是将来自其他项目lib
目录的所有可能JAR放入当前项目的构建路径中,而不必检查构建所需的内容。
考虑到每个项目中有几十个JAR,这种方法会带来问题吗?
发布于 2012-02-23 16:17:54
发布于 2012-02-23 16:24:00
我同意@m0skit0的观点,并补充说,你应该尽最大努力删除你并不真正使用的库。
这可能很难手动完成。因此,更好的方法是使用自动依赖管理。Maven和Gradle完美地完成了这项工作。你只需要提到第一级依赖项(你应该知道的)。他们关心第二、第三等级别的依赖关系。您从不更新您的lib
目录。构建工具会自动更新您的本地存储库。
发布于 2012-02-23 16:21:39
所谓相互依赖,我希望你的意思不是说你有循环依赖。这将是一个很大的不!
如果你的依赖不是循环的,那么我看不出有什么问题。您无论如何都需要运行时类路径中的所有jars才能运行该程序。你可能想要避免的是在项目A的代码中有一些对项目B使用的库"old_library_still_needed_by_project_B_but_that_should_not_be_used_anymore.jar“的直接依赖,但是有静态的Java代码分析工具(可以检查一些类或包从未在项目源代码中使用过),比如CheckStyle和PMD。
https://stackoverflow.com/questions/9409235
复制相似问题