Maven从入门到精通(一)
maven是一个项目管理工具,我的后续将会根据这个思维导图给大家由浅到深讲解Maven是如何管理我们的项目,以及我们如何更好的使用Maven

maven在开发过程中功能主要有三个方面:
管理依赖 (POM引入依赖即可自动下载对应jar包)
自动化构建项目(源程序-->(编译,测试,打包,安装,部属)-->可运行程序)
管理项目信息
Maven基本:
一 安装:Maven下载地址:http://maven.apache.org/download.cgi
下载后解压到任意目录(目录最好不要带有中文),然后配置环境变量(注意:配置Maven时,环境变量里面一定要存在JAVA_HOME,也就是配置好JDK环境)
系统变量
添加MAVEN_HOME 路径就是maven的安装目录

path添加环境变量

如果以上全部配置好,我们使用cmd打开命令提示符mvn -v即可看到如下界面

二 使用
Maven工程的目录结构:约定 这是maven的基础语法 maven的所有东西都是建立在约定好的目录结构之上的。体现了软件开发的一种重要思想:约定优于配置 配置优于编码
Maven借助约定实现声明式服务能力。
1、maven工程目录结构:
Hello
|---src
|---|---main
|---|---|---java
|---|---|---resources
|---|---test
|---|---|---java
|---|---|---resources
|---pom.xml
HelloWeb
|---src
|---|---main
|---|---|---java
|---|---|---resources
|---|---|---webapp
|---|---|---|---WEB-INF
|---|---|---|---|---web.xml
|---|---|---|---|---lib
|---|---|---|---pages
|---|---test
|---|---|---java
|---|---|---resources
|---pom.xml
2、创建maven工程:(在任意目录使用cmd打开命令提示符执行即可 原型为我们创建的目录其实并不完整,可以参考上面完整目录自行创建)
普通Java工程
mvn archetype:generate -DgroupId=com.bj.maven -DartifactId=maven-01-hello -DarchetypeArtifactId=maven-archetype-quickstart -DarchetypeVersion=1.4 -DinteractiveMode=false
Web工程
mvn archetype:generate -DgroupId=com.bj.maven -DartifactId=maven-02-helloweb -DarchetypeArtifactId=maven-archetype-webapp -DinteractivMode=false

第一个箭头 使用默认版本直接回车
第二个箭头 输入y确认就可以了
一个最简单的POM.xml就出现了
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.bj.maven</groupId>
<artifactId>maven-02-helloweb</artifactId>
<packaging>war</packaging>
<version>1.0-SNAPSHOT</version>
<name>maven-02-helloweb Maven Webapp</name>
<url>http://maven.apache.org</url>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<finalName>maven-02-helloweb</finalName>
</build>
</project>
以上是maven最基础的环境搭建及如何创建一个简单的MAVEN工程,并且了解了MAVEN的基本语法.
下一章我们将会带领大家了解MAVEN更深层次的POM文件,我们学习Maven最主要的就是学习Maven的POM文件.敬请期待...
Maven从入门到精通(一)的更多相关文章
- Maven从入门到精通(四)
这一篇我会着重讲解Maven的核心命令及作用,Maven在项目构建各个阶段的作用. 1.maven生命周期模型: 1.1.清洁(clean) 1.2.默认(default) 1.3.站点(site) ...
- Maven从入门到精通(三)
我们已经了解了Maven的环境搭建以及POM的主要标签及作用,接下来我们要讲解一下Maven的仓库以及jar下载的一个过程 首先我们要明白仓库及以下一些概念 1.仓库: 在Maven中,任何一个 ...
- Maven从入门到精通(二)
上一篇我们讲解了Maven项目的基本目录结构,也已经安装了Maven的开发环境,接下来我们要重点讲解一下Maven最核心的灵魂pom.xml文件 POM:Project Object Model 项目 ...
- cucumber_java从入门到精通(5)使用maven创建cucumber_java项目
cucumber java从入门到精通(5)使用maven创建cucumber java项目 前几节我们已经在感性上认识了cucumber的基本功能以及BDD测试的基本流程,我们渐进重构,一步一步的向 ...
- Spring Boot从入门到精通(二)配置GitHub并上传Maven项目
简单介绍一下GitHub,它是一个面向开源及私有软件项目的托管平台,因为只支持git作为唯一的版本库格式进行托管,故名GitHub. GitHub于2008年4月10日正式上线,除了Git代码仓库托管 ...
- Android Studio教程从入门到精通
最新2.0系列文章参考: Android Studio2.0 教程从入门到精通Windows版 - 安装篇Android Studio2.0 教程从入门到精通Windows版 - 入门篇Android ...
- 2017最新技术java高级架构、千万高并发、分布式集群、架构师入门到精通视频教程
* { font-family: "Microsoft YaHei" !important } h1 { color: #FF0 } 15套java架构师.集群.高可用.高可扩展. ...
- 《java从入门到精通》学习记录
目录 <Java从入门到精通>学习记录 3 基础的基础部分: 3 一. 常量与变量 3 1. 掌握: 3 (1) .常量与变量的声明方式: 3 (2) .变量的命名规则: 3 (3) .变 ...
- Android Studio2.0 教程从入门到精通Windows版 - 入门篇
http://www.open-open.com/lib/view/open1468121363300.html 本文转自:深度开源(open-open.com)原文标题:Android Studio ...
随机推荐
- Mybaist 注解 foreach 嵌套循环实现批量插入
第一种写法(#使用占位符推荐): @Insert("<script>" + " insert into ${tb} " +" <fo ...
- Dubbo搭建HelloWorld-搭建服务提供者与服务消费者并完成远程调用(附代码下载)
场景 Dubbo简介与基本概念: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/103555224 Dubbo环境搭建-ZooKe ...
- conda退出base 环境
安装conda后取消命令行前出现的base,取消每次启动自动激活conda的基础环境 方法一: 每次在命令行通过conda deactivate退出base环境回到系统自动的环境 方法二 1,通过 ...
- 文件操作:fseek()
int fseek(FILE *stream, long offset, int fromwhere); fseek 用于二进制方式打开的文件,移动文件读写指针位置. int fseek( FIL ...
- Jmeter(二) Jmeter组件介绍
一.测试计划 测试的起点,同时也是其他所有组件的容器 二.线程(用户) Setup 线程组:一种特殊类型的线程,可用于执行预测试操作.即执行测试前进行定期线程组的执行 Teardown 线程组:一种特 ...
- C++入门经典-例3.21-goto语句实现循环
1:代码如下: // 3.21.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include <iostream> usin ...
- JSTL标签语言
******概述: JSTL是apache对EL表达式的扩展(也就是说JSTL依赖EL),JSTL是标签语言! JSTL标签使用以来非常方便,它与JSP动作标签一定,只不过它不是JSP内置的标签,需要 ...
- Oracle中关键字like的使用总结
Like 模糊查询 占位符 % 任意个数字符 _ 一个字符 查询 用户名以‘S’开头的员工信息 Select * from emp where ename like 'S%' 查询用户名第二个字母 ...
- 二、linux下apache2.2.11+php5.6.3的环境配置
参考文献:http://www.92csz.com/study/linux/16.htm 本节部分操作会直接使用上一节(http://www.cnblogs.com/yxpblog/p/4627509 ...
- ASP.NET图片防盗链(使用一般处理程序)
<img src="你的一般处理程序的地址"/> context.Response.ContentType = "image/jpeg"; Uri ...