简介:

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. 006.Ansible自定义变量

    ansible支持变量,用于存储会在整个项目中重复使用到的一些值.以简化项目的创建与维护,降低出错的机率. 变量的定义: 变量名应该由字母.数字下划数组成 变量名必须以字母开头 ansible内置关键 ...

  2. 9.4-6 kill & killall & pkill

    kill:终止进程 能够终止你希望停止的进程. kill 命令的参数选项及说明 -l    列出全部的信号名称 -p    指定kill命令只打印相关进程的进程号,而不发送任何信号 -s    指定要 ...

  3. Java中单列集合List排序的真实应用场景

    一.需求描述 最近产品应客户要求提出了一个新的需求,有一个列表查询需要按照其中的多列进行排序. 二.需求分析 由于数据总量不多,可以全部查询出来,因此我就考虑使用集合工具类Collections.so ...

  4. 重新整理 .net core 实践篇————配置系统之盟约[五]

    前言 在asp .net core 中我们会看到一个appsettings.json 文件,它就是我们在服务中的各种配置,是至关重要的一部门. 不管是官方自带的服务,还是我们自己编写的服务都是用它来实 ...

  5. 代码动态更换MeshRenderer的材质Materials

    public class metrailstest : MonoBehaviour { Material[] m; Material i; public Material[] n; int index ...

  6. Go语言中的单例模式

    Go语言中的单例模式 在过去的几年中,Go语言的发展是惊人的,并且吸引了很多由其他语言(Python.PHP.Ruby)转向Go语言的跨语言学习者. Go语言太容易实现并发了,以至于它在很多地方被不正 ...

  7. 开源项目核心商城(CoreShop)

    帮小伙伴推一下他的开源项目作者是@大灰灰 核心商城(CoreShop)Beta 支持可视化布局的.Net小程序商城 [![star](https://gitee.com/CoreUnion/CoreS ...

  8. Ryzen 4000'Vermeer' CPU和Radeon RX'Big Navi'图形卡

    Ryzen 4000'Vermeer' CPU和Radeon RX'Big Navi'图形卡 来自中国媒体的多篇报道表明,AMD都准备在2020年第四季度初推出其下一代Ryzen 4000'Zen 3 ...

  9. Java中List集合转Map集合报错:Duplicate key

    一.问题由来 最近生成环境刚发布了一个版本,本人负责优化的一个功能在进行测试时,报错了一个异常,duplicate key;去百度里面看了一下, 意思很明确就是建重复,而且错误是在Java代码中抛出来 ...

  10. P5132 Cozy Glow之拯救小马国

    题目描述 Cozy Glow偷偷摸摸的造了一个魔法阵,这个魔法阵在吸取小马国的魔力,所以你得赶紧把它毁掉. 这个魔法阵由若干个神器组成,每个神器都有一个法力值,每两个神器之间也都有一个关联值.你要依次 ...