根据什么是Maven,它的目标是: 使构建过程变得简单 提供统一的构建系统 提供高质量的项目信息 提供最佳实践开发指南 允许透明地迁移到新功能 我能否只用bash编写构建脚本呢?使用Maven项目的动机是什么?有没有示例?
Maven在依赖管理方面做得非常好,这是其中一个更大的卖点。此外,它还有助于强制执行标准化的项目结构。美妙之处在于,我可以拿起任何使用Maven的项目,并且基本上立刻知道各种文件的位置。Maven还有一个相当广泛的插件库,允许进行很多操作...从自动化静态代码分析(通过pmd/findbugs/checkstyle等),计算测试覆盖率,生成javadocs,生成源代码包,运行Jetty中的Web应用程序等等。我告诉你,这不是一个容易学习的工具,但是如果你掌握了它,你会发现它所能做的一切。如果您想要我详细解释任何特定内容,请告诉我。
Maven是一个工具,可以为您处理大量的项目设置和配置。例如,如果您想要一个Java项目能够与构建服务器正确集成、提供代码覆盖率信息,并生成可轻松在组织中的其他项目中使用的jar文件 - 您可以花费数周时间手动使用ANT进行设置,或者您可以采用Maven的方式来完成这些任务。此外,您可以设置原型(已有许多预配置项目),以满足您所需的设置。这是在组织内强制执行标准并提高生产力的好方法。Maven确实提供了一些有点严格的规则,但最终它大大缩短了许多不同任务所需的时间。我建议阅读O'Reilly的《Maven权威指南》作为资源进行查阅。