Maven
几个月来工作中一直在用Maven来管理项目,但是并没有真正系统的学过Maven,经过最近几天的学习将所学到的Maven知识点总结于此,希望能帮助各位初学者,也各位大牛多多指教。
注:由于笔者目前所有的系统是linux系统 deepin 15.3 所以,以下案例都以linux系统为例安装。
一.Maven简介(用来做什么)
Apache Maven 是一个软件项目管理工具。基于项目对象模型POM(Project Object Model )的概念。Maven可用来管理项目的依赖,编译,文档等信息。
使用Maven管理项目时,项目依赖的jar包将不再包含在项目内,而是集中放置在用户目录下的.m2文件夹下。
二.Maven安装(deepin 15.3)
1:ctrl+alt+t 打开系统终端,输入安装命令:
sudo apt-get install maven
2:然后系统会询问软件所解压后所占用的空间,输入y就可以安装。
3:然后坐等系统安装,安装完,输入mvn -v 检测是否安装完成。
注意:如果在官网下载的tar.gz安装包。
1:tar -xzvf XXX.tar.gz
-x :解开一个压缩文件的参数指令!
-z :是否同时具有 gzip 的属性?亦即是否需要用 gzip 压缩?
-v :压缩的过程中显示文件!这个常用,但不建议用在背景执行过程!
-f :使用档名,请留意,在 f 之后要立即接档名喔!不要再加参数!
2:配置环境变量
sudo gedit /etc/profile #打开配置文件
export MAVEN_HOME=/home/解压maven的目录/apache-maven-3.0.5 #配置环境变量
source /etc/profile #刷新环境变量
3:检测是否配置好。mvn -v
三.Maven的pom.xml
Maven是基于项目对象模型的概念运行的。所有Maven的项目都有一个pom.xml用来管理项目的依赖以及项目的编译等功能。
1:在项目中,我们需要关注的元素有:
1. dependencies元素
<dependencies></dependencies>,此元素包含多个项目依赖,每个依赖需要用
<dependency></dependency>元素来配置。
2.dependency元素
<dependency></dependency>内部通过groupId,artifactId以及version确定唯一的依赖。有人
即groupId是组织的唯一标识,
artifactId是项目的唯一标识。
version是项目的版本。
示例:
<dependencies>
<!-- spring核心包 -->
<!-- springframe start -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>${spring.version}</version>
</dependency>
</dependencies>
2:变量定义
变量定义:<properties></properties>可定义变量在<dependency>中使用。比如上例中的<version>元素中的变量就是我在pom.xml开始的<properties>元素中所定义的。
<properties>
<!-- spring版本号 -->
<spring.version>4.1.4.RELEASE</spring.version>
</properties>
<dependencies>
<!-- spring核心包 -->
<!-- springframe start -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>${spring.version}</version>
</dependency>
</dependencies>
3.编译插件
Maven 提供了编译插件,可在编译插件中涉及java的编译级别,代码如下。
<build>
<finalName>${project.artifactId}</finalName>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.7</source>
<target>1.7</target>
</configuration>
</plugin>
</plugins>
</build>
5.Maven的运作方式
Maven会自动根据dependency中的依赖配置,直接通过互联网在Maven中心库下载依赖包到.m2目录下,.m2目录下是你本地的Maven库。
注意:如果不知道您所依赖jar包的dependency怎么写的话,推荐到http://mvnrepository.com/ 网站中检索。若Maven中心库没有你需要的jar包,如(Oracle),你需要通过下面的Maven命令打到本地的Maven库后应用即可。如,安装oracle驱动到本地。
mvn install:install-file -DgroupId=com.oracle "-DartifactId=ojdbc14"
"-Dversion=10.2.0.2.0" "-Dpackaging=jar" "-Dfile=D:\Ojdbc14.jar"
注:以上博客仅代表个人观点,如有不对的地方,还望各位同行批评指正。