1.Maven是什么?

Maven是一个跨平台的项目管理工具(对jar包进行统一管理)。


1.1. Maven主要内容如下:

  1. 项目对象模型
  2. 项目生命周期
  3. 依赖管理系统

1.2. 使用Maven的好处:

  • 项目构建自动化
  • 依赖管理统一化

  Maven不仅是一个项目构建工具,也是一个项目管理工具,它对我们项目的结构做了约定(统一开发规范),使用Maven创建项目后,那么你的项目源文件,

类文件都被Maven掌控着。项目构建是指项目的编译,测试,打包,部署等一个项目的生命周期。

1.3. Maven项目Jar包管理方式:

图解:

2.Idea创建Maven项目


2.1. idea下的Maven

idea自带Maven,不需要自己另外下载安装。

打开idea后,点击File-new-Project,可以看到如下界面。选中Maven后,选择jdk版本,勾选Greate from archetype,找到图中的选项的位置

这两个就是我们开发普通Java项目和Web项目所用到的配置方式。

2.2. 使用Maven创建普通java项目

选择2.1中的普通项目即可,点击下一步,填写相关信息。版本号默认生成或者填自己想要的信息都可以。

用于标记当前版本。三个单词的缩写为GAV(坐标)。

点击下一步。

当前页面可以看到如下信息。idea自带的Maven版本,默认的配置文件地址(settings.xml)不建议修改。

本地仓库地址(用于存储远程下载的Jar包),如要修改则将settings.xml下配置的路径也更新。

Settings.xml文件

默认情况下.m2下面是没有settings.xml这个配置文件的,需要自己放一个进去。

这里提供一个配置方式,也可以自己创建。

<?xml version="1.0" encoding="UTF-8"?>
<settings>
<localRepository>C:\Users\16779\.m2\repository</localRepository><!--需要改成自己的maven的本地仓库地址-->
<mirrors>
<mirror>
<id>alimaven</id>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url> <!--阿里云在线仓库地址-->
<mirrorOf>central</mirrorOf>
</mirror>
</mirrors>
<profiles>
<profile>
<id>nexus</id>
<repositories>
<repository>
<id>nexus</id>
<name>local private nexus</name>
<url>http://maven.oschina.net/content/groups/public/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
</repositories> <pluginRepositories>
<pluginRepository>
<id>nexus</id>
<name>local private nexus</name>
<url>http://maven.oschina.net/content/groups/public/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
</pluginRepository>
</pluginRepositories>
</profile></profiles>
</settings>

点击下一步,填写好项目储存地址后点击finish项目据创建好了。

如果是第一次创建,会自动下载Jar包,下载过程中会在右下角弹出是否自动导入Jar包,选择Auto Import。

也可以直接去setting里面设置。

如果不想要自动导包,可以直接右击项目导包

Jar包导入完成后,项目结构如下。

项目新建完成之后修改Maven配置文件地址和本地仓库地址

Maven项目的生命周期

Maven项目的生命周期包括项目的清理、初始化、编译、测试、打包、集成测试、验证、部署和站点生成等几乎所有的构建步骤。

一般只用到编译,测试,打包和清理。

  • compile

    编译生成cass文件

  • clean

    调用clean生命周期的clean阶段,对项目进行清理,清除编译好的class文件

  • test

    调用default生命周期的test阶段,对test目录中的源码进行编译

  • install

    调用default生命周期的install阶段,对项目打包并部署到本地仓库,项目必须已经选择JDK环境

idea操作Maven生命周期的方式:

点击idea左下角的小框框,选择其中的Maven

此时会弹出下面的窗口,Lifecycle就是Maven的上面周期,选择要操作的选项,点击上面的运行按钮即可。

备注:仅供参考,如有错误,欢迎指出。

Maven入门(idea)的更多相关文章

  1. Maven入门详解

    什么是Maven Maven,鼎鼎大名,在今天之前,我对于它一直是处于一种"只闻其名不见其人"的状态.之所以说"只闻其名",是因为Maven太有名了,它是Apa ...

  2. Maven 入门 (2)—— 创建Maven项目

    http://blog.csdn.net/kakashi8841/article/details/17427043 读这篇文章之前请先确保你成功安装了maven,如果你还没安装成功,请先看:Maven ...

  3. Maven 入门 (1)—— 安装

    Maven 入门 (1)—— 安装 http://blog.csdn.net/kakashi8841/article/details/17371837 1.下载maven安装包 http://mave ...

  4. Maven入门示例(3):自动部署至外部Tomcat

    Maven入门示例(3):自动部署至外部Tomcat 博客分类:  maven 2012原创   Maven入门示例(3):自动部署至外部Tomcat 上一篇,介绍了如何创建Maven项目以及如何在内 ...

  5. maven 入门

    Apache Maven 入门篇 ( 上 ) 作者:George Ma 写这个 maven 的入门篇是因为之前在一个开发者会的动手实验中发现挺多人对于 maven 不是那么了解,所以就有了这个想法.这 ...

  6. Apache Maven 入门篇 ( 上 )

    作者:George Ma 写这个 maven 的入门篇是因为之前在一个开发者会的动手实验中发现挺多人对于 maven 不是那么了解,所以就有了这个想法. 这个入门篇分上下两篇.本文着重动手,用 mav ...

  7. Maven入门系列(二)--设置中央仓库的方法

    原文地址:http://www.codeweblog.com/maven入门系列-二-设置中央仓库的方法/ Maven仓库放在我的文档里好吗?当然不好,重装一次电脑,意味着一切jar都要重新下载和发布 ...

  8. [转]Apache Maven 入门篇 ( 上 )

    原文地址:Apache Maven 入门篇 ( 上 ) 作者:George Ma 写这个 maven 的入门篇是因为之前在一个开发者会的动手实验中发现挺多人对于 maven 不是那么了解,所以就有了这 ...

  9. [转]Apache Maven 入门篇(下)

    原文地址: Apache Maven 入门篇(下) 作者:George Ma 第一篇文章大概的介绍了一下Apache Maven以及它的下载和安装,并且运行了一个简单的示例.那么在对maven有了一点 ...

  10. Apache Maven 入门

    Apache Maven 入门篇 ( 上 ) Apache Maven 入门篇 ( 下 ) ~$mvn archetype:generate -DgroupId=com.mycompany.hello ...

随机推荐

  1. Swift 计算字符串展示的区域

    一.如果是普通文本,那么可以采用NSString的方法,代码如下: import UIKit import PlaygroundSupport class MyViewController : UIV ...

  2. vue3+vant 引入Dialog Toast都会失败报错not defined

    今天在封装vant组件的时候,刚好要用到toast提示信息的组件,索性就按照官网提供的引入方法进行正常的引入,嘿,好家伙,一顿操作下来后发现竟然报Toast未定义,这就纳闷了,明明步骤都是对的啊,所以 ...

  3. map和解构赋值的拷贝

    map遍历之后返回的数组是深拷贝,解构赋值一维的是深拷贝,二维是浅拷贝

  4. [ROI 2018] Innophone 题解

    [ROI 2018] Innophone 看了半天网上仅有的一篇题解--才堪堪写出来 不过在LOJ上看提交,全是 KTT,看得我瑟瑟发抖(不会 题意翻译 在平面上有一些点,你需要在这个平面上任意确定一 ...

  5. Spring扩展——BeanPostProcessor(BPP)

    BeanPostProcess简介 在Spring中 BeanPostProcessor 是一个非常重要的接口,它用于在每个bean对象初始化前后修改Bean的属性信息,比如我们最常用的@Autowi ...

  6. 部署jar项目服务命令

    部署jar项目服务命令首先使用jenkins打包jar history | grep java 查看ps aux | grep 服务关键字关闭进程,否则启动的时候报错:java.net.BindExc ...

  7. ITMS-90717: 无效的应用程序商店图标

    PS导入照片 图像->模式->索引颜色 透明度去掉打勾保存即可

  8. typora中LaTeX公式常用指令

    # typora中LaTeX公式常用指令 以下指令只能保证在typora中完美显示,但是在其他编辑器中可能会部分不支持 \cal F.X.Y = KaTeX parse error: Expected ...

  9. mac brew install Error: No available formula with the name “*“的解决办法

    背景 在mac上使用brew安装软件发生错误 解决办法 执行以下命令即可 rm -rf /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core ...

  10. WPS中导入endnote插件

    WPS中导入endnote插件 1. 找到 Endnote 插件的目录: D:\Program Files (x86)\EndNote 20\Product-Support\CWYW   2. 把Cw ...