关于Java构建工具
可参考Java构建工具
“随后Apache Maven诞生了,Maven是一个依赖项管理和构建自动化工具,遵循着约定大于配置的规则。虽然也需要编写xml,但是对于复杂工程更加容易管理,有着标准化的工程结构,清晰的依赖管理。此外,由于Maven本质上是一个插件执行框架,也提供了一定的开放性的能力,我们可以通过Maven的插件开发,为构建构成创造一定的灵活性。”
按照博主本人的查阅与理解:
- 项目对象模型 (Project Object Model)
- 依赖管理模型(Dependency)
- 插件(Plugin)
1.maven是一个可以将项目统一一个目录结构的工具,这样做的原因是什么呢?这样在不同的开发工具(例如eclipse与idea)中,就可以同样地导入导出不受影响;
2.maven可以提供一套标准化的构建流程(编译,测试,打包,发布……)
3.另一个maven的强大之处在于,maven可以帮我们主动加载导入代码运行时我们需要的jar包,在往常我们要运行一个项目时,为了让代码跑起来,我们需要自己去配置各种各样的jar包,当需要配置的jar包只有一两个时,可能这并没有多么的烦恼,但是,当你需要的是非常非常多时,导入jar包就很费时间和精力了。而maven可以帮助我们把包自动配置并导入。
pom(project object model)
这张图截自maven官网,对于maven的introduction
下图是关于maven创建的目录中每一个文件代表的意思
在pom中可以通过如下格式配置需要的jar包
原理是什么呢?pom中我们通过如上格式标明我们需要的配置文件的版本,然后它就会去仓库找,找到之后就会为我们加载上。
仓库呢,是maven团队维护好的一个装有很多很多我们需要的jar包的仓库
并且仓库会有我们本地的仓库,在我们本地的仓库中找不到了我们需要的包了,它就又自动跑去远程仓库中央仓库找,然后帮我们下载(非常贴心)
因为中央仓库在国外,太远啦,so我们就有了个远程仓库(私服),个人觉得这个的存在有点像镜像存在意义。
创建maven项目
这个网上的资源就很多啦,自行c一下吧