简介:

Maven是Apache公司的开源项目,是项目构建工具,用来管理依赖。

Maven的优点:

同样的代码实现相同的功能,Maven项目没有Jar包,项目大小更小。

maven的优点如何实现:

没有Jar包,Maven项目如何运行?

maven的两大核心

  • 依赖管理:对jar包管理
  • 项目构建:项目编码完成后,对项目进行编译、测试、打包、部署一系列的操作可通过命令实现。

通过maven命令将web项目发布到tomcat:

$> mvn tomcat:run

maven安装、配置本地仓库

maven程序安装的前提:maven程序由java开发,运行依赖jdk。

maven下载安装

访问Maven官网

maven压缩包解压(路径不要有中文、空格等)

解压后后目录

  • bin目录:可执行脚本命令
  • conf目录:配置文件
  • lib目录:maven程序运行需要的jar包

配置环境变量

在系统变量里新建变量:MAVEN_HOME

变量值为:maven安装的路径

(前提,JDK环境变量为JAVA_HOME)



将MAVEN_HOME配置到Path环境变量中

查看是否配置成功:

打开CMD,输入 mvn -v

仓库类型



配置本地仓库

  1. 找到jar包的压缩包
  2. 解压到本地
  3. 配置本地仓库:使maven程序知道jar包所在

    在maven conf目录中打开settings.xml



    找到localRepository



    如下图添加

  4. 设置阿里云镜像(settings.xml中)
<!--  配置阿里云  -->
<mirror>
<id>nexus-aliyun</id>
<mirrorOf>*</mirrorOf>
<name>Nexus aliyun</name>
<url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>
  1. 设置默认JDK版本(settings.xml中)
<profile>
<id>jdk-1.8</id>
<activation>
<activeByDefault>true</activeByDefault>
<jdk>1.8</jdk>
</activation>
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
</properties>
</profile>

maven项目标准目录结构

  • src:项目源代码

    • main:

      • java:主题程序代码
      • resources:项目需要的配置文件
      • webapp:页面素材(页面、css、js、image等)
    • test:
      • java:单元测试类
      • resources
  • target:存放src源码编译后的.class文件,(不属于标准目录结构)
  • pom.xml:maven项目的核心配置文件

maven常用命令

  • mvn clean :清理编译后的目录target ( 使用jar包:mvn-clean-plugin
  • mvn compile:编译,生成target目录 ( 使用jar包:mvn-compiler-plugin
  • mvn test:单元测试,项目根目录src下test目录java都会执行 (前提:单元测试类名必须以Test结尾 如WebTest
  • mvn package:打包,不需要指定打包成什么类型,根据项目自动决定。

    web project --------->打包成war包

    java project --------->打包成jar包

    将项目打包,导出到target目录下。
  • mvn install:安装,解决本地多个项目公用一个jar包,打包到本地仓库

    maven项目的生命周期

    在maven中存在三套生命周期,生命周期互相独立互不影响;在一套生命周期内,执行后面的命令,前面的命令自动执行:

    • cleanLifeCycle:清理生命周期 clean
    • defaultLifeCycle:默认生命周期 compile test package install deploy
    • siteLifeCycle:站点生命周期 site

Maven安装、配置及基础的更多相关文章

  1. 转载maven安装,配置,入门

    转载:http://www.cnblogs.com/dcba1112/archive/2011/05/01/2033805.html 本书代码下载 大家可以从我的网站下载本书的代码:http://ww ...

  2. Maven学习第2期---Maven安装配置

    一.Maven介绍 1.1 何为Maven Maven这个词可以翻译为"知识的积累",也可以翻译为"专家"或"内行".Maven是一个跨平台 ...

  3. Maven安装配置操作

    1)下载maven安装包并解压: 2)环境变量配置: 3)编辑环境变量Path,追加%MAVEN_HOME%\bin; 4)maven安装配置后进行dos命令检查:在cmd中输入 mvn -v 5)配 ...

  4. JeePlus:Maven 安装配置

    ylbtech-JeePlus:Maven 安装配置 1.返回顶部 1. Maven 安装配置 1 Maven 由于Maven依赖Java运行环境,因此使用Maven之前需要配置Java的运行环境.下 ...

  5. Maven安装配置及其插件m2e(Eclipse Indigo 和 MyEclipse8.5)的安装配置

    Maven安装配置及其插件m2e(Eclipse Indigo 和 MyEclipse8.5)的安装配置   系统:Windows7 使用软件: Maven3.0.3 + Eclipse Indigo ...

  6. 第一章 Maven 安装配置

    Maven基于(POM)项目对象模型,通过一小段描述信息来管理项目的构建.文档.和报告的项目管理软件,类似于php 的管理构建工具composer. 有关详细的Maven学习,可以参考学习https: ...

  7. Spring Boot入门样例-001-Java和Maven安装配置

    Spring Boot入门样例-001-Java和Maven安装配置 本文说明Java和Maven在windows下的安装和配置 前言 本Spring Boot入门样例准备工作参考: Spring B ...

  8. maven安装配置

    1.到官网下载maven http://maven.apache.org/download.html 2.解压后解压到任意文件路径 本地解压的位置:C:\soft\apache-maven-3.3.9 ...

  9. maven安装配置(myeclipse)(一)

    欢迎转载:http://www.cnblogs.com/shizhongtao/p/3374130.html 对于我来说,maven主要用于jar包的管理,避免项目中频繁更换jar的版本,以及网上搜索 ...

  10. Jenkins2.32.1+svn+maven安装配置与构建部署

    这两天学习了一下持久化集成工具Jenkins,在自己的本地搭建一个简单的Jenkins环境. 使用环境:Windows64系统,JDK1.8,eclipse,svn(Windows版本VisualSV ...

随机推荐

  1. Python实现TCP通讯

    Environment Client:Windows Server:KaLi Linux(VM_virtul) Network:Same LAN Client #!/usr/bin/python3 # ...

  2. 使用 parted 命令可以查看系统采用什么类型的分区表 gpt/mbr/msdos/ext/ext/ext2/ext3/ext4

      Linux磁盘表示方式 Linux以字母标识磁盘的个数 a:第一块 b:第二块 Linux用数字标识分区:1-4标识主分区或扩展分区 逻辑分区从5开始 例如:sda.sda1.sda2 低级格式化 ...

  3. kvm虚拟化网络管理(5)

    一.Linux Bridge网桥管理 网络虚拟化是虚拟化技术中最复杂的部分,也是非常重要的资源. 第一节中我们创建了一个名为br0的linux-bridge网桥,如果在此网桥上新建一台vm,如下图: ...

  4. IT行业新闻事件

    台积电: http://www.eefocus.com/component/394512 新闻合集: https://mail.qq.com/cgi-bin/frame_html?sid=q3Mhqr ...

  5. oepncv实现——图像去水印

    功能简介:通过拖动鼠标实现指定区域水印或是斑点的去除. 实现原理:利用opencv鼠标操作setMouseCallback函数框选(左上到右下)需要处理的区域,按下鼠标开始选中,松开鼠标结束,对选中区 ...

  6. Redis持久化锦囊在手,再也不会担心数据丢失了

    大家好,我是小羽. Redis 的读写都是在内存中进行的,所以它的性能高.而当我们的服务器断开或者重启的时候,数据就会消失,那么我们该怎么解决这个问题呢? 其实 Redis 已经为我们提供了一种持久化 ...

  7. 201871030132-熊文婷 实验三 结对项目—《D{0-1}KP 实例数据集算法实验平台》项目报告

    项目 内容 课程班级博客链接 https://edu.cnblogs.com/campus/xbsf/2018CST 这个作业要求链接 https://www.cnblogs.com/nwnu-dai ...

  8. CVD-ALD前驱体材料

    CVD-ALD前驱体材料 ALD前驱体源瓶特点是什么   ALD前驱体源瓶(起泡器)用于固态.液态及气态超纯物料类的封装,涉及微正压.常压.中低压的危险化学品,对源瓶的安全性和洁净度提出严苛的要求. ...

  9. OpenCV读写视频文件解析(二)

    OpenCV读写视频文件解析(二) VideoCapture::set 设置视频捕获中的属性. C++:bool VideoCapture::set(int propId, double value) ...

  10. 浅谈Gson和fastjson使用中的坑

    相信大家在代码编写中都用过Gson和fastjson吧,用来进行 Java对象和json字符串之间的转换. 本篇文章就主要介绍博主在工作中使用这两款工具时遇到的坑和对应的解决办法. 觉得有用的可以点个 ...