本文已参与「新人创作礼」活动,一起开启掘金创作之路。
maven的核心概念
pom.xml配置文件
使用maven默认生成的工程,对junit依赖的是较低的3.8.1版本,我们可以改成较为合适的4.12版本:
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>
</dependencies>
而后自动生成的App.java和AppText.java可以删除
标签解读
-
project标签: 根标签,表示对当前工程进行配置、管理
-
modelVersion标签: 从Maven2开始就是固定是4.0.0,表示当前pom.xml所采用的标签结构
-
后面跟着三个坐标的信息
-
packaging标签: 声明打包方式
- 取值jar:生成jar包,说明这是一个Java工程
- 取值war:生成war包,说明这是一个web工程
- 取值pom:说明这个工程是用来管理其它工程的工程
-
properties标签: 再maven中定义属性值
- prohect.build.sourceEncoding标签: 再构建过程中读取源码时使用的字符集
-
dependencies标签: 配置具体依赖信息
-
dependency标签: 配置一个具体的依赖信息
- 放置坐标信息,要导入哪个jar包,就配置它的坐标信息即可
- scope标签: 配置当前依赖的范围
-
maven核心概念:POM
Project Object Model,项目对象模型。和pom类似的是:DOM,文档对象模型,它们都是模型化思想的重要体现
模型化思想: POM表示将工程抽象为一个模型,再用程序中的对象来描述这个模型。这样我们就可以用程序来管理项目了。我们在开发过程中,最基本的做法就是将现实生活中的事物抽象为模型,然后封装模型相关的数据作为一个对象,这样就可以在程序中计算和现实事物相关的数据
POM理念便集中体现在我们上面说过的pom.xml配置文件中,所以pom.xml配置文件就是maven工程的核心配置文件。其学习maven就是学这个文件怎么配置,各个配置有什么用。
maven核心概念:约定的目录结构
-
src:源码目录
-
main:主体程序目录
-
java:java源代码
- com:package目录
-
resources:配置文件
-
-
test:测试程序目录
-
java:java源代码
- com:package目录
-
-
另外还有一个target目录专门存放构建操作输出的结果
约定目录结构是为了让构建过程能够尽可能地自动化完成,不需要人再干预
约定大于配置,配置大于编码