Maven的简单使用

 

1、前言php

mavenjava的包管理工具,至关因而nodejs中的npmphp中的composerpython中的pip(若是有一个中了,那么你应该就了解了)。应用maven能够方便地引入各类java的第三方类库(包括SpringStrutsjunit等)和插件(如tomcat等)。java

本文采用intelliJ IDEA做为集成开发环境(IDE),在其中建立一个maven的项目,并在其中引入Apache Common Math库(一个用于科学计算的类库),完成一些简单的计算实现。node

2、下载mavenpython

软件下载安装历来不是难事,先进入maven官网http://maven.apache.org/,而后在左侧点进download页面download.cgi,拖到下面File中,windows系统下载后缀为bin.zip的文件便可。spring

下载事后解压到一个文件夹下,我把它放到了C:\MyFolds\Tools\apache-maven-3.5.0下,这个目录即是maven的根目录了,里面包含binbootconflib4个文件夹,还有LICENSENOTICEREADME.txt文件,以下图。apache

 

 

bin是一个经常使用的目录,咱们能够把它添加到系统的环境变量中,这样,咱们就能够在命令行中使用了。此时应该来一个”mvn -v“的指令。npm

 

 

固然,这一步对咱们以后的操做影响不大,由于java不是一个跟命令行关系很大的语言。windows

2、IntelliJ IDEA中集成maven数组

IntelliJ IDEA应该不用多介绍,除了占用的系统资源多以外,很难再找出什么缺点出来,用起来很是舒服。这里咱们假定你已经在IDEA中配置好javatomcat

废话很少说,咱们打开IDEA,而后File->Settings打开Settings(设置)页面,再找的话应该是Build,Execution,Deployment->Build Tools->Maven,咱们也能够经过搜索来快速找到。

 

 

须要配置的是其中的Maven home directory,点击右侧的“...”,而后选择maven的根目录便可。倒三角里有IDEA集成的maven,也能够选择,不过不是最新版的。

3、建立一个maven项目

java设计者的眼中,全部代码都是项目加配置,maven也不例外,要使用maven须要先建立一个项目,并写好一个名为pom.xml的配置文件。

先普及一点小知识,POM的英文全称是Project Object Model,即项目对象模型,我就不说它和DOM(文档对象模型)相似了,由于这彻底就是两个东西。pom.xmlmaven所依赖的项目描述配置文件,在这里能够定义一些项目的相关数据,例如做者、公司和项目名等,固然最关键的仍是它能够引入类库的依赖,从而不用再到各大官方网站上下载jar包。

好了,咱们回到任务中来。在配置完了maven路径以后,咱们点击File->New->Project,而后点击左侧的Maven,右侧会出现不少archetype,这是maven中不少人贡献的maven项目构建框架,咱们这里不用这个,直接点击Next进入下一步。

 

 

进入下一步,它会让你填写三个参数:GroupIdArtifactIdVersion。这个三元组在maven中被称为坐标,在以后引入类库时还会用到。为了进行下去,咱们很少介绍,只给出填写的说明。GroupId通常为公司名或公司网址,例如说org.springframework,即是spring框架通常会使用的GroupId(没公司的话,编你还不会吗?没有梦想吗?),这里我填入com.vastsum,虽然这个公司已经不存在了,可是灵魂仍在传承。ArtifactId你能够理解为项目名(Artifact是艺术品的意思,可见maven的做者很会起名字),固然若是只是一个组件的话能够用“-”来分割,如spring-context,这里咱们就写demo吧。最后Version填个1.0或者1.1.0的均可以,默认的1.0-SNAPSHOT,表示这是一个快照,还没正式上线。

 

 

进入下一步,设置Project NameProject location,注意到它会把ArtifactId直接当作项目名,这能够修改,可是也不必,咱们Finish完成建立。

4、项目概览

若是不出意外,项目的结构会以下图所示。其中.ideaIDEA项目配置文件,src目录用于放源代码,main是功能代码,test是测试代码,两个文件夹中的java文件夹用于放置java代码,resources用于放各种资源文件,demo.iml用于描述IDEA项目结构,接下来即是最关键的以前所说的pom.xmlExternal Libraries是扩展类库。

 

 

咱们打开pom.xml,其中的内容以下。

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>


    <groupId>com.vastsum</groupId>
    <artifactId>demo</artifactId>
    <version>1.0-SNAPSHOT</version>
</project>

xml配置是java项目的特点,这也标志着java很难脱离IDE工具,估计再厉害的人也记不住那么多的xmlnsxsi吧。

咱们大体分析一下这个基本的pom.xml文件。首先,整个文档的根节点是project,而后一个modelVersion指定这个pom.xml文档所用的规范,而后即是三个以前见到的元素groupIdartifactIdversion

IDEA的右侧会有一个Maven Project窗口。

 

 

 

5、引入依赖

接下来,咱们引入Apache Common Math库。咱们能够到http://mvnrespository.com中搜索类库,固然,在百度里搜索apache common math maven,第一个结果也是这个。

点击下面的版本,就能获取一个mavendependency的代码。以下:

<!-- https://mvnrepository.com/artifact/org.apache.commons/commons-math3 -->

<dependency>

    <groupId>org.apache.commons</groupId>

    <artifactId>commons-math3</artifactId>

    <version>3.6.1</version>

</dependency>

 

 

 

 

咱们把这段代码复制到pom.xml中,用dependencies包裹起来,此时IDEA便会在右下角有提示,点击“import changes”,IDEA就会自动把所须要的依赖下载下来。

 

 

6、测试代码

最后,咱们来尝试使用这个组件。

src/main/java中建立文件Mathlib.java

 

import org.apache.commons.math3.stat.descriptive.moment.Mean;

public class Mathlib {
    public static void main(String[] args)
    {
        double[] values = new double[] {3,4,66,34,12};
        Mean mean = new Mean();
        System.out.println(mean.evaluate(values));
    }
}

代码很简单,定义一个数组,调用Mean类的evaluate方法求这个数组的平均值。

执行,可得结果:

 

此处仅为说明maven已经成功地将dependency引入项目了。

相关文章
相关标签/搜索