Maven入门(idea)
1.Maven是什么?
Maven是一个跨平台的项目管理工具(对jar包进行统一管理)。
1.1. Maven主要内容如下:
- 项目对象模型
- 项目生命周期
- 依赖管理系统
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)的更多相关文章
- Maven入门详解
什么是Maven Maven,鼎鼎大名,在今天之前,我对于它一直是处于一种"只闻其名不见其人"的状态.之所以说"只闻其名",是因为Maven太有名了,它是Apa ...
- Maven 入门 (2)—— 创建Maven项目
http://blog.csdn.net/kakashi8841/article/details/17427043 读这篇文章之前请先确保你成功安装了maven,如果你还没安装成功,请先看:Maven ...
- Maven 入门 (1)—— 安装
Maven 入门 (1)—— 安装 http://blog.csdn.net/kakashi8841/article/details/17371837 1.下载maven安装包 http://mave ...
- Maven入门示例(3):自动部署至外部Tomcat
Maven入门示例(3):自动部署至外部Tomcat 博客分类: maven 2012原创 Maven入门示例(3):自动部署至外部Tomcat 上一篇,介绍了如何创建Maven项目以及如何在内 ...
- maven 入门
Apache Maven 入门篇 ( 上 ) 作者:George Ma 写这个 maven 的入门篇是因为之前在一个开发者会的动手实验中发现挺多人对于 maven 不是那么了解,所以就有了这个想法.这 ...
- Apache Maven 入门篇 ( 上 )
作者:George Ma 写这个 maven 的入门篇是因为之前在一个开发者会的动手实验中发现挺多人对于 maven 不是那么了解,所以就有了这个想法. 这个入门篇分上下两篇.本文着重动手,用 mav ...
- Maven入门系列(二)--设置中央仓库的方法
原文地址:http://www.codeweblog.com/maven入门系列-二-设置中央仓库的方法/ Maven仓库放在我的文档里好吗?当然不好,重装一次电脑,意味着一切jar都要重新下载和发布 ...
- [转]Apache Maven 入门篇 ( 上 )
原文地址:Apache Maven 入门篇 ( 上 ) 作者:George Ma 写这个 maven 的入门篇是因为之前在一个开发者会的动手实验中发现挺多人对于 maven 不是那么了解,所以就有了这 ...
- [转]Apache Maven 入门篇(下)
原文地址: Apache Maven 入门篇(下) 作者:George Ma 第一篇文章大概的介绍了一下Apache Maven以及它的下载和安装,并且运行了一个简单的示例.那么在对maven有了一点 ...
- Apache Maven 入门
Apache Maven 入门篇 ( 上 ) Apache Maven 入门篇 ( 下 ) ~$mvn archetype:generate -DgroupId=com.mycompany.hello ...
随机推荐
- 揭秘华为如此多成功项目的产品关键——Charter模板
很多推行IPD(集成产品开发)体系的公司在正式研发产品前,需要开发Charter,以确保产品研发方向的正确.Charter,即项目任务书或商业计划书.Charter的呈现标志着产品规划阶段的完成,能为 ...
- 莫烦tensorflow学习记录 (2)激励函数Activation Function
https://mofanpy.com/tutorials/machine-learning/tensorflow/intro-activation-function/ 这里的 AF 就是指的激励函数 ...
- 终于搞懂了!原来vue3中template使用ref无需.value是因为这个
前言 众所周知,vue3的template中使用ref变量无需使用.value.还可以在事件处理器中进行赋值操作时,无需使用.value就可以直接修改ref变量的值,比如:<button @cl ...
- 从零开始的常用MySQL语句练习大全
先说一些废话 很多时候深入学习固然很重要,但是想要写下一篇给新手都能看得懂看的很香,并且老鸟可以查漏补缺的的练习博客,还是挺有难度, 所以今天尝试写一些关于MySQL的语句练习大全,供想要从零开始练习 ...
- 数据库系列16:MyISAM与InnoDB的索引对比
相关文章 数据库系列:MySQL慢查询分析和性能优化 数据库系列:MySQL索引优化总结(综合版) 数据库系列:高并发下的数据字段变更 数据库系列:覆盖索引和规避回表 数据库系列:数据库高可用及无损扩 ...
- P7897
problem && blog 第一道正经的 Ynoi,特此写篇题解纪念一下. Algorithm 1 可以想到 \(O(nm)\) 的 DP. 我们定义 \(dp_u\) 为 \(u ...
- 借助 DSL 来简化 Loadgen 配置
引言 在上篇文章中,我们介绍了如何用 Loadgen 来简化 HTTP API 的集成测试.在实际使用中会发现,编写测试时最令人"头疼"的部分是设计测试的输入和校验程序的输出,而针 ...
- java8 多条件的filter过滤
java8 多条件的filter过滤 package com.example.core.mydemo.java; import java.io.Serializable; import java.ti ...
- AgileConfig-1.9.4 发布,支持 OpenTelemetry
Hello 大家好,最新版的 AgileConfig 1.9.4 发布了.现在它可以通过 OpenTelemetry 对外提供 logs,traces,metrics 三个维度的数据.用户可以自由选择 ...
- typora中LaTeX公式常用指令
# typora中LaTeX公式常用指令 以下指令只能保证在typora中完美显示,但是在其他编辑器中可能会部分不支持 \cal F.X.Y = KaTeX parse error: Expected ...