我们将所有源代码的从属第三方JAR与我们的源代码一起检入源代码控制。在需要时,我们手动将更新下载到第三方JAR,并用新版本替换那些源代码管理的JAR。我们还没有觉得需要使用Maven,因为这个过程对我们来说似乎很简单。但是我们是否因为不使用Maven而错失了一些有价值的东西?或者我们的方案不保证使用Maven?当依赖源代码签入时使用Maven是否仍然有意义?
回答
“的JAR不要有太大变化”,我听到这一切的时候.....
在SCM存储罐是在项目的开始简单。随着时间的推移,罐子的数量会越来越大....等待2到3年,没有人记得罐子来自哪里,他们的许可条款是什么,最常用的是什么版本(在分析安全漏洞时很重要) .....
我读过最近作出的情况下对一个仓库管理的最好的文章是:
有点irreverant,但做出一个有效点人们一直遇到的那种技术惯性。
将项目团队从ANT切换到Maven可能会很可怕.... Maven的工作方式完全不同,所以我发现它最好与绿地或冒险项目团队一起部署。对于老派ANT用户,我推荐使用Apache ivy插件。常春藤允许这样的团队外包他们的依赖管理,但保留他们熟悉的构建技术。
最终,使用Maven的最大好处不是依赖管理。这是独立的构建过程。我见过几次尝试创建“标准”ANT构建过程的失败尝试。每个构建工程师都会对标准应该是什么提出自己的看法。Maven强制用户编写构建插件的方法在开始时可能会出现限制,但就像iPhone最终开发人员发现“这里有一个Maven插件”: - )
不错的答案,谢谢 – BestPractices 2012-07-11 22:46:23
说到依赖管理,Maven确实可能非常有价值。正如Mark O'Connor所建议的那样,运行本地资源库管理器可能比将工件检入源代码管理更好。
有许多工具(如eclipse中的m2e)可以帮助依赖管理,并提供有关哪些模块或依赖关系需要哪些其他依赖关系的宝贵反馈。即使不同的模块依赖于给定库的不同版本,Maven也会确保获得相应的依赖版本。这将有助于防止部署项目中出现同一个jar的重复版本,只要它们具有相同的组和工件标识。
即使是一个非常简单的项目,我不认为我会诉诸检查到源代码管理系统的依赖关系。
很好的答案,谢谢 – BestPractices 2012-07-11 22:46:33
这不仅关乎第三方图书馆。大多数情况下,如果你有多个存储库。在我们的例子中,我们有四个存储库,有很多内部和内部依赖关系。 其实我开始这个答案,然后我不得不花15分钟时间与一些同事谈谈在别人的lib目录中忘记更新一个项目的.jar后发生的问题。
它看起来更专业:)
- 1. Maven源代码依赖关系
- 2. 同时仍然使用依赖注入与WCF
- 3. “address”HTML标签是否仍然使用?
- 4. Maven eclipse项目使用maven依赖关系的可编辑源代码
- 5. 源代码依赖关系
- 6. 可以Maven'导入'资源依赖?
- 7. 如果使用bower和grunt,使用@ Styles.Render和@ Scripts.Render是否仍然有意义?
- 8. Maven - 如何在打包时打包所有依赖项的源代码
- 9. 当没有多个实现时,是否推荐使用依赖注入?
- 10. 大量的页面`查看源代码行是否有意义?
- 11. Jmockit /春嘲笑的依赖仍然调用真正的依赖
- 12. Maven依赖性问题,即使有示例代码
- 13. 使用“依赖注入”是什么意思?任何AS3代码示例展示?
- 14. 此Java代码是否仍然安全?使用URL类
- 15. org.alfresco.repo是否存在maven依赖项?
- 16. 在maven依赖项中键入“bundle”是什么意思?
- 17. 是否可以使用依赖关系编译golang代码?
- 18. Paint.Net仍然提供其源代码
- 19. 的IntelliJ Maven的依赖没有找到(源码-JDBC)
- 20. 当使用Sqlite DB + PHP时,文件缓存是否有意义?
- 21. 是否仍然有效?
- 22. Sharekit是否仍然有效?
- 23. 当JSLint返回45个错误时,这意味着什么,但是代码仍然有效,是什么样的?
- 24. Maven - 是否有命令下载所有依赖jar的父poms?
- 25. 当我的SSL证书过期时,ASIFormDataRequest是否仍然有效?
- 26. EM中的CSS元素维度是否仍然是当代?
- 27. 是否有任何插件可以启用非Maven依赖加载/使用?
- 28. 隐藏输入仍然显示在源代码
- 29. 依赖使用Swift的二进制框架仍然“危险”吗?
- 30. Maven的:依赖
Maven会删除需要你通过管理第三方jar文件的依赖检查罐子。 – Reimeus 2012-07-11 18:42:17
除此之外的任何东西?由于JARs没有太大变化(一年最多几次),因此我的项目中的人员仅仅使用其他代码来检查JAR是一个很好的例子。 – BestPractices 2012-07-11 19:40:33
Maven不需要在第一个实例中搜索每个相关的jar文件。您还需要更新到新版本以利用新功能,Maven将在您的POM中指定新版本后自动下载这些jar。 – Reimeus 2012-07-11 19:53:12