关于Ant与Maven(一)

upate time:2019-2-26 author:要你命三千又三千 type:学习笔记

 

Maven的使用

 

由来:

当一个代码项目大了以后,每次重新编译、打包、测试等都会变得非常复杂而且重复,因此c语言中有make脚本来帮助这些工作的批量完成。在Java 中应用是平台无关性的,当然不会用平台相关的make脚本来完成这些批处理任务了,ANT本身就是这样一个流程脚本引擎,用于自动化调用程序完成项目的编译、打包、测试等。

Ant和Maven都是基于Java的构建(build)工具。Ant是软件构建工具, Maven是一个项目管理和综合工具。Maven提供了开发人员构建一个完整的生命周期框架。开发团队可以自动完成项目的基础工具建设,Maven使用标准的目录结构和默认构建生命周期

Ant

Ant构建文件默认命名为build.xml

特点:

  • 没有一个约定的目录结构
  • 必须明确让ant做什么,什么时候做,然后编译,打包
  • 没有生命周期,必须定义目标及其实现的任务序列
  • 没有集成依赖管理

Maven(软件项目管理和理解工具)

Maven默认构建文件为pom.xml

特点:

  • 拥有约定,知道你的代码在哪里,放到哪里去
  • 拥有一个生命周期,例如执行 mvn install 就可以自动执行编译,测试,打包等构建过程
  • 只需要定义一个pom.xml,然后把源码放到默认的目录,Maven帮你处理其他事情
  • 拥有依赖管理,仓库管理

问题一:如何下载maven和安装

Maven 下载地址:http://maven.apache.org/download.cgi
百度网盘:对应的windows版本下载
在这里插入图片描述

问题补充

如何配置环境

在这里插入图片描述

问题二:why eclipse使用外部的Maven

原因:要使用外部的Maven版本

关键:内嵌的版本,不稳定,出现版本问题(版本不可控)。
在这里插入图片描述

问题三:如何使用外部Maven的版本

具体步骤

第一步:下载对应的二进制版本
根据上图说明:
百度网盘:对应的windows版本下载

第二步:看图依次完成添加步骤在这里插入图片描述 步骤四:

新建MavenProject项目
在这里插入图片描述

在这里插入图片描述

问题:如何解决下载慢(卡住的)的问题

具体步骤

找到对应的全局配置文件所在的位置
在这里插入图片描述
打开setting.xml
添加阿里云镜像

<mirrors>
    <mirror>
      <id>alimaven</id>
      <name>aliyun maven</name>
      <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
      <mirrorOf>central</mirrorOf>        
    </mirror>
</mirrors>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

步骤三:打开强制更新
项目右键——>Maven----->Update project—>勾选force update
在这里插入图片描述
此时项目更新加快,很快完成。

补充

问题一:如何选择使用Maven建立的项目模板

  1. maven-archetype-quickstart 默认的Archetype,基本内容包括:
  • 一个包含junit依赖声明的pom.xml
  • src/main/java主代码目录及一个名为App的类
  • src/test/java测试代码目录及一个名为AppTest的测试用例
  1. maven-archetype-webapp 一个最简单的Maven war项目模板,当需要快速创建一个Web应用的时候可以使用它。生成的项目内容包括:
  • 一个packaging为war且带有junit依赖声明的pom.xml
  • src/main/webapp/目录
  • src/main/webapp/index.jsp文件
  • src/main/webapp/WEB-INF/web.xml文件

查看ecplise中maven仓库视图

打开查看仓库中所有的Maven仓库及其下载的文件。
在这里插入图片描述

如何从SCM仓库中获取去maven 项目

操作方法:先从远端下载下来,然后再次导入客户端。

概念简介

SCM(软件配置管理)仓库
具体的工具有:
CVS ,Git :,Mercurial ,Subversion

Mercurial是一个版本管理系统,官方网站https://www.mercurial-scm.org/ 功能和git差不多,同样是一个分布式版本管理系统。在github推出之后,bitbucket.org提供Mercurial版的代码托管服务,后来bitbucket被Atlassian收购,后bitbucket也推出Git版的代码托管服务。
在这里插入图片描述

问题解决方法的补充

关于在SCM 仓库中下载问题,可以自行下载,然后在本地系统中导入项目即可。

关于几个概念

Effective POM概念

可以显示所有的有效的POM配置,表示合并整个集成结构中所有信息的POM
在这里插入图片描述

Maven下载 依赖项目的源码

方法一:右击项目–>选择Maven—>选择Download Source(下载当前项目的依赖下载的源代码)。
方法二:windows–>preferences–>Maven–>下载download Artifact sources.
在这里插入图片描述

依赖分析

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

©️2020 CSDN 皮肤主题: 编程工作室 设计师:CSDN官方博客 返回首页