我们将所有源代码的依赖第三方JAR与源代码一起签入到源代码控制中。当需要时,我们手动下载第三方JAR的更新,并用较新的版本替换那些在源代码控制中的JAR。我们还没有感觉到有必要使用Maven,因为这个过程对我们来说似乎足够简单。但是,我们是否因为不使用Maven而错过了一些非常有价值的东西呢?或者我们的场景不需要使用Maven?
发布于 2012-07-12 04:00:25
“罐子不会变”,我经常听到这句话……
在项目开始时,在SCM中存储jars非常简单。随着时间的推移,罐子的数量越来越多……等待两三年,没有人记得jars是从哪里来的,它们的许可条款是什么,以及最常见的是使用了什么版本(在分析安全漏洞时要知道这一点很重要)……
我最近读到的关于仓库管理器的最好的文章是:
有点不可逆转,但对于人们总是遇到的那种技术惯性,确实提出了一个有效的观点。
将项目团队从ANT切换到Maven可能会很可怕……Maven的工作方式完全不同,所以我发现它最适合部署在绿地或喜欢冒险的项目团队中。对于老派的ANT用户,我建议使用Apache ivy插件。Ivy允许这样的团队将其依赖项的管理外包出去,但保留他们熟悉的构建技术。
归根结底,使用Maven的最大好处不是依赖项管理。这是一个标准化的构建过程。我见过几次创建“标准”ANT构建过程的失败尝试。问题每个构建工程师对标准应该是什么都有自己的看法……Maven强迫用户编写构建插件的方法在一开始可能看起来有限制,但就像iPhone一样,最终开发人员发现“有一个Maven插件可以做到这一点”:-)
https://stackoverflow.com/questions/11438980
复制相似问题