《Maven权威指南》学习笔记一_Maven简介

Maven是什么?
    一个项目管理工具。
原则:
    约定优于配置(Convention Over Configuration)。
        源码:        ...workspace/project_name/src/main/java
        资源文件: ...workspace/project_name/src/main/resources
        测试:        ...workspace/project_name/src/test
        字节码:     ...workspace/project_name/target/classes
        项目Jar包:...workspace/project_name/target
        以及其他配置约定等
Maven的核心几乎不做任何事情,除了解析xml文件、管理生命周期和插件,几乎大部分职责都被委派给Maven插件。
—————————————————————————————————————————
Maven和Ant的比较
Ant:
 - 没正式约定的目录结构
 - 是程序化的,需要明确指定何时做什么
 - 无生命周期,手工定义目标之间的依赖,手工标示目标的任务序列
Maven:
 - 拥有自己的约定
 - 是声名式的,通过配置pom.xml实现
 - 有生命周期
—————————————————————————————————————————  
Maven的核心对你项目构建中特定的任务几乎毫无所知。就它本身来说,Maven不知道如何编译你的代码,它甚至不知道如何制作一个JAR文件,它把所有这些任务代理给了Maven插件,像Compiler插件和Jar插件,它们在需要的时候被下载下来并且定时的从Maven中央仓库更新。 当你下载Maven的时候,你得到的是一个包含了基本躯壳的Maven核心,它知道如何解析命令行,管理classpath,解析POM文件,在需要的时候下载Maven插件。 通过保持插件和Maven核心的分离,并且提供更新机制,用户很容易能使用到最新的版本。通过这种方式,Maven插件提供了通用构建逻辑的全局重用性。



你可能感兴趣的:(maven)