Java学习之初识Maven

简介

功能特点

Maven主要作用类似于VS的包管理器,能够帮助开发者完成以下工作:构建、文档生成、报告、依赖、SCMs、发布、分发、邮件列表等。
详细请阅读:https://www.runoob.com/maven/maven-tutorial.html
此外,需要注意下Maven的Snapshot版本与Release版本的区别

基础配置

环境变量

Maven 下载地址:http://maven.apache.org/download.cgi
设置 Maven 环境变量
添加环境变量 MAVEN_HOME:

POM

POM( Project Object Model,项目对象模型 ) 是 Maven 工程的基本工作单元,是一个XML文件,包含了项目的基本信息,用于描述项目如何构建,声明项目依赖,等等

执行任务或目标时,Maven 会在当前目录中查找 POM。它读取 POM,获取所需的配置信息,然后执行目标。

POM 中可以指定以下配置:
项目依赖、插件、执行目标、项目构建 profile、项目版本、项目开发者列表、相关邮件列表信息

项目模板(archetype)

1.maven-archetype-quickstart

生成普通的JAVA项目框架

2.maven-archetype-webapp

生成普通的JAVA WEB项目框架

推荐文章:
Maven 三种archetype说明

使用

构建Java项目

原文:https://www.runoob.com/maven/maven-creating-project.html
命令格式如下:

mvn archetype:generate -DgroupId=com.companyname.bank -DartifactId=consumerBanking -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false

参数说明:

-DgourpId: 组织名,公司网址的反写 + 项目名称
-DartifactId: 项目名-模块名
-DarchetypeArtifactId: 指定 ArchetypeId,maven-archetype-quickstart,创建一个简单的 Java 应用
-DinteractiveMode: 是否使用交互模式

知识扩展

脚手架搭建

手写Maven的archetype项目脚手架
多模块项目脚手架源码:https://github.com/hafizzhang/beast-archetype

Gradle

Gradle是一个构建工具,它是用来帮助我们构建app的,构建包括编译、打包等过程。
相关学习:
https://www.cnblogs.com/Bonker/p/5619458.html

参考文章

使用IntelliJ IDEA 配置Maven(入门)

常见问题

本地仓库配置及修改默认.m2仓库位置

原文:https://blog.csdn.net/qq_27093465/article/details/52957253

自定义一个用来存放的文件夹,将D:\Program Files\JetBrains\IntelliJ IDEA 2019.1.3\plugins\maven\lib\maven3\conf\settings.xml拷贝过来,并作如下修改:

<settings> <localRepository>自己仓库的存放目录,我的仓库已经移动到e盘了,具体看上面的那个图的箭头所指的位置</localRepository> </settings>
intelliJ idea 编辑器的setting->Bulid,... -> BulidTools -> Maven -> 找到setting设置的地方,勾选上override,指定刚才的位置

解决无法下载Jar或下载失败的情况

原文:https://blog.csdn.net/u012547633/article/details/90580675

配置setting.xml的节点,改为阿里云的即可 ` nexus-aliyun central Nexus Aliyun http://maven.aliyun.com/nexus/content/groups/public/ nexus local private nexus http://maven.aliyun.com/nexus/content/groups/public/ true false nexus local private nexus http://maven.aliyun.com/nexus/content/groups/public/ true false `
posted @ 2019-05-02 23:11  心存善念  阅读(309)  评论(0编辑  收藏  举报