Maven系列学习(一)Maven基本知识
Maven 简介
1.Maven主要是基于Java平台的项目构建,依赖管理和项目信息
2.Maven是优秀的构建工具,跨平台,消除构建的重复,抽象了一个完整的构建生命周期模型,标准化构建过程
3.管理分布的项目信息,版本控制系统,轻松获取项目文档,测试报告,静态分析报告,版本日志报告等
4.极限编程(XP)的搭配是非常不错的,比如持续集成(CI)
5.在Maven中,任何一个依赖、插件或者项目构建的输出,都可以称之为构件,构件存储在仓库,(仓库就是存放依赖和插件的地方),任何的构件都有唯一的坐标,Maven根据这个坐标定义了构件在仓库中的唯一存储路径,
Maven 安装和配置(我使用的是Ubuntu)
1.去Maven的下载网页:http://maven.apache.org/download.cgi,我下载的是apache-maven-3.5.0-bin.tar.gz
2.检查Java的环境变量和版本:
zyd@kirohuji-X550MJ:~$ sudo echo $JAVA_HOME
[sudo] password for zyd:
/etc/jvm/jdk1.8.0_111
zyd@kirohuji-X550MJ:~$ java -version
java version "1.8.0_111"
Java(TM) SE Runtime Environment (build 1.8.0_111-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.111-b14, mixed mode)
3.然后解压:
zyd@kirohuji-X550MJ:~/Downloads$ sudo tar -xvzf apache-maven-3.5.0-bin.tar.gz -C /opt
4.配置环境
zyd@kirohuji-X550MJ:~$ sudo gedit /etc/profile
在最下面添加代码
#maven
export MAVEN_HOME=/opt/apache-maven-3.5.0
export PATH=${PATH}:${MAVEN_HOME}/bin
完成!
重启生效或使用source /etc/profile代码
参看版本
mvn -version
Apache Maven 3.5. (ff8f5e7444045639af65f6095c62210b5713f426; --04T03::+:)
Maven home: /opt/apache-maven-3.5.
Java version: 1.8.0_111, vendor: Oracle Corporation
Java home: /etc/jvm/jdk1..0_111/jre
Default locale: en_US, platform encoding: UTF-
OS name: "linux", version: "4.10.0-21-generic", arch: "amd64", family: "unix"
Maven目录的分析

bin:该目录包含了mvn运行的脚本,这些脚本用来配置Java命令,还包含了m2.conf文件,这是classworlds的配置文件
boot:就包含了一个文件,以这次的下载的版本,该文件是plexus-classworlds-2.5.2.jar,是一个类加载器框架
conf:这个目录用到的非常重要的文件setting.xml,直接修改该文件,就能在机器上全局地制定了Maven的行为
lib:该目录包含了所有Maven运行时需要的Java类库,Maven是分模块开发的,可以说lib目录就是真正的目录
最后一条简单的命令:
mvn help:system
该命令会打印出所有的java系统配置和环境变量,这些信息对我们日常的编程很有帮助,即会执行一条命令,会下载maven-help-plugin,包括pom文件和jar文件,然后放入本地仓库
,默认的本地仓库是在/home/{your name}/.m2文件,所有的Maven构件都被存储到仓库中,该文件夹里包含一个仓库:repository
Maven 插件
对于Maven,可以结合IDE使用,比如eclipse,Netbeans,IDEA,在此不做详解
Maven配置用户范围setings.xml
Maven用户可以选择配置M2_HOME/conf/settings.xml或者~/.m2/settings.xml,前者是全局范围,对整台电脑有效,而后者是用户范围的,推荐使用用户范围的,
Maven目录结构
http://www.cnblogs.com/kirohuji/p/6953536.html
Maven系列学习(一)Maven基本知识的更多相关文章
- Maven系列学习(二)Maven使用入门
Maven使用入门 通过上一节的学习,我们已经了解和配置好了Maven,接下来需要编写代码了 1.POM(Project Object Model,项目对象模型) 和Make的Makefile类似,M ...
- Maven系列学习(三)Maven生命周期和插件
Maven生命周期和插件 Maven另外的两个核心概念就是生命周期和插件,Maven的生命周期都是抽象的,其实实际行为都是由插件来完成的,生命周期和插件两者协同工作 1.生命周期 Maven的生命周期 ...
- Maven基础入门与核心知识
Apache Maven是一个软件项目管理和综合工具.基于项目对象模型(POM)的概念,Maven可以从一个中心资料片管理项目构建,报告和文件. Maven是一个项目管理和综合工具.Maven提供了开 ...
- Maven简介(Maven是什么)
简介 Maven,在意第绪语中意为对知识的积累.Maven最初用来在Jakarta Turbine项目中简化该项目的构建过程.Jakarta Trubine项目有多个工程,每个工程都有自己的多个Ant ...
- maven之一:maven安装和eclipse集成
maven作为一个项目构建工具,在开发的过程中很受欢迎,可以帮助管理项目中的bao依赖问题,另外它的很多功能都极大的减少了开发的难度,下面来介绍maven的安装及与eclipse的集成. maven的 ...
- Maven进价:Maven构建系列文章
Maven:基于Java平台的项目构建.依赖管理和项目信息管理. 1.构建 Maven标准化了构建过程 构建过程:编译.运行单元测试.生成文档.打包和部署 避免重复:设计.编码.文档.构建 2.依赖管 ...
- Eclipse中Maven工程缺少Maven Dependencies
Eclipse在引入Maven工程后,找不到Maven Dependencies.使得代码报错,具体如下图所示: 而正常Maven的工程如下所示: 产生这种现象的原因可能是工程对应的开发环境改变,本地 ...
- 4.Maven概念模型,maven的生命周期,Maven坐标,依赖管理(依赖范围,依赖声明),仓库管理,私服概念
1 maven概念模型 2 maven的生命周期,项目构建过程 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdG90b3R1enVvcXVhbg== ...
- maven系列之一maven安装和与IDE集成
第一部分:maven的基本信息和安装,配置 maven是一个项目构建和管理的工具,提供了帮助管理 构建.文档.报告.依赖.scms.发布.分发的方法.可以方便的编译代码.进行依赖管理.管理二进制库等 ...
随机推荐
- Neo4j的查询语法笔记(二)
cypher是neo4j官网提供的声明式查询语言,非常强大,用它可以完成任意的图谱里面的查询过滤,我们知识图谱的一期项目 基本开发完毕,后面会陆续总结学习一下neo4j相关的知识.今天接着上篇文章来看 ...
- JAVA对象序列化和反序列化学习
JAVA序列化就是将JAVA对象转化为字节序列的过程,而JAVA反序列化就是将字节序列转化为JAVA对象的过程. 这一过程是通过JAVA虚拟机独立完成,所以一个对象序列化后可以在任意时间和任意机器上反 ...
- hash和history
location.hash="aaa" history.pushState({},'', "home") history.replaceState() hist ...
- Jsp 自定义tag标签
1转自:https://blog.csdn.net/yusimiao/article/details/46835617 Jsp自定义tag标签 自定义tag标签的好处 程序员可以自定一些特定功能的标记 ...
- log4j常用的配置文件
# priority :debug<info<warn<error #you cannot specify every priority with different file fo ...
- 2018-10-25-weekly
Algorithm 94. 二叉树的中序遍历 What 给定一个二叉树,返回它的中序遍历. How 二叉树的中序遍历顺序为左-根-右,可以用递归来解,对左子结点调用递归函数,根节点访问值,右子节点再调 ...
- linux环境进程开机自检脚本
Linux下shell脚本监控Tomcat的状态并实现自动启动 最近公司需要在Linux下监控tomcat的服务,一旦tomcat服务存在异常或者宕机,重启tomcat保证服务的正常运行,由于Linu ...
- a[b]和b[a]区别
#include <stdio.h> main() { char a[5] = "abcd"; int b = 3; printf("%c\n",a ...
- django 多表查询并返回结果
(不喜勿喷,个人记录) 问题,有两张关联的表,表B的api_id关联表A的id 我想在页面上返回两张表查询之后的共同结果? 因为两张表的id是一样的,就先获取到表A的对象,然后拿表A的对象id当做表B ...
- sklearn.metrics.mean_absolute_error
注意多维数组 MAE 的计算方法 * >>> from sklearn.metrics import mean_absolute_error >>> y_true ...