Maven的使用入门
0.什么是maven?
- 它是一个软件开发管理工具,主要管理工作是:依赖管理,项目一键构建
1.我们为什么要使用maven?
- 使用maven构建的项目不包含jar包文件,所以整个项目的体积非常小
maven工程不用手动导jar包,通过在pom.xml中定义坐标从maven仓库自动下载,方便且不易出错。
- 项目一键构建:使用maven可以快速地对项目进行编译--测试--运行--打包--安装
- maven的跨平台,可在window、linux上使用
- maven遵循规范开发有利于提高大型团队的开发效率,降低项目的维护成本,大公司都会考虑使用maven来构建项目。
2.maven的安装
- maven的下载 : http://maven.apache.org/download.cgi
- 下载后解压到一个地址,路径地址不包含地址
- maven的环境变量配置 :
将 %MAVEN_HOME%/bin 加入环境变量 path
- 测试是否成功 在命令行中 输入
mvn -v
3.maven仓库的配置 也就是当项目需要jar包的时候通过坐标去仓库寻找jar包
- 仓库的分类
- 本地仓库
- 私服(公司的仓库)
- 中央仓库
- 本地仓库的配置
- 编辑 apache-maven-3.3.9\conf 目录下settings.xml 增加节点 中间
J:\maven\mavenwarehouse
是你的本地仓库地址
<localRepository>J:\maven\mavenwarehouse</localRepository>
- 编辑 apache-maven-3.3.9\conf 目录下settings.xml 增加节点 中间
- ps:什么是本地仓库? 本地仓库是由个人将常用到的jar包放入一个仓库中 已备自己在项目中使用 可从网络上下载别人配置好的jar包仓库 仓库一般很大
4.maven项目的目录规范
5.maven的常用命令
- 进入一个测试项目的目录 复制项目地址
本地的一个测试项目的项目地址 J:\ecplisework\testmaven
进入命令行 进入该目录
- complile命令 compile是maven工程的编译命令,作用是将src/main/java下的文件编译为class文件输出到target目录下
mvn compile
- test命令 : test是maven工程的测试命令,会执行src/test/java下的单元测试类。 例如我现在由一个测试的方法输出"我现在测试啦..........."
- clean 命令 :clean是maven工程的清理命令,执行 clean会删除target目录的内容。例如我现在清理掉刚才编译生成的target的目录
- package 命令 : package是maven工程的打包命令,对于java工程执行package打成jar包,对于web工程打成war包。例如我现在将这个测试项目打成war包,提示打包成功,并且位置在target目录下
6.如何使用ecplise开发maven项目
- 插件:现在的ecplise版本一般包含由maven插件,如果是低版本请按章m2e插件
- 在ecplise中添加自己的maven
- 告诉ecplise自己的本地仓库的位置 就是maven的配置文件地址
- 构建索引
- 打开maven窗口
Window---show view ------other----------maven Repositories
- 开始构建索引
- 打开maven窗口
- 在ecplise创建一个maven项目
- 选择 Maven Project
- 点击next进入下面界面
- 创建成功,但是报错,添加下面内容 手动添加WEB-INF和web.xml文件 因为一个标准的web项目必须包含这些内容
- 在src/java/main创建一个servlet,但是又报错了
- 要解决问题,就是要将servlet-api-xxx.jar包放进来,作为maven工程应当添加servlet的坐标,从而导入它的jar 直接打开helloworld工程的pom.xml文件,再添加坐标
自己生成下面代码
添加jar包的坐标时,还可以指定这个jar包将来的作用范围
注意修改 下面几个选择provided 否则在发布的时候会和tomcat提供的又jar包冲突
Maven的使用入门的更多相关文章
- 转载maven安装,配置,入门
转载:http://www.cnblogs.com/dcba1112/archive/2011/05/01/2033805.html 本书代码下载 大家可以从我的网站下载本书的代码:http://ww ...
- maven学习记录一——maven介绍及入门
1 Maven的简介 1.1 什么是maven 是apache下的一个开源项目,是纯java开发,并且只是用来管理java项目的 1.2 Maven好处 普通的传统项目 M ...
- Maven使用--基本入门
maven学习(上)- 基本入门用法 转载自:https://www.cnblogs.com/yjmyzz/p/3495762.html 参考: http://www.cnblogs.com/dave ...
- appium + maven +jenkins 基本入门之二 新建maven 的java项目
1: 下载maven : 1.0 :设置maven的环境变量: 1.1: 设置maven本地仓库: 在下载好的maven文件夹找到 apache-maven-3.3.9/conf 文件夹下的setti ...
- maven 教程一 入门
摘要: (1)maven是项目管理工具,类似makefile.主要的生命阶段有 validate:验证工程是否正确,所有需要的资源是否可用. compile:编译项目的源代码. test:使用 ...
- Maven 结合 IDEA 入门实践
一.Maven 基本安装 1. 下载 首先来到 http://maven.apache.org/download.cgi ,直接下载以 -bin.zip 结尾的文件,如图 2. 存储位置 将其解压后, ...
- IntelliJ IDEA下Maven SpringMVC+Mybatis入门搭建例子
很久之前写了一篇SSH搭建例子,由于工作原因已经转到SpringMVC+Mybatis,就以之前SSH实现简单登陆的例子,总结看看SpringMVC+Mybatis怎么实现. Spring一开始是轻量 ...
- maven学习-基本入门用法
一.下载及安装 1.1 下载maven 3.1.1 先到官网http://maven.apache.org/download.cgi 下载最新版本(目前是3.1.1 ),下载完成后,解压到某个目录(本 ...
- Maven笔记 #01# 入门
索引 Maven是干什么的? 用Maven的好处 Maven与命令行 Maven与IntelliJ IDEA 一.Maven是干什么的? 我相信只要你写过足够多的代码,就... 肯定有思考过写一个脚本 ...
- Maven+eclipse快速入门
1.eclipse下载 在无外网情况下,无法通过eclipse自带的help-install new software输入url来获取maven插件,因此可以用集成了maven插件的免安装eclips ...
随机推荐
- ubuntu获取root权限
1.先在Terminal下设置root密码 执行 sudo passwd root 2.执行sudo su,然后根据提示来即可.
- Atitit.部分错误 设计模式,异常处理框架atiPartErr 的总结
Atitit.部分错误 设计模式,异常处理框架atiPartErr 的总结 1. 流程图 1 2. Java 类关系结构图片 1 3. 错误信息结构 1 4. 调用 2 4.1. 收集错误信息 3 4 ...
- C++11新特性实验
#include <iostream> #include <vector> #include <map> #include <string> #incl ...
- int、char、long各占多少字节数
Java基本类型占用的字节数:1字节: byte , boolean2字节: short , char4字节: int , float8字节: long , double 编码与中文:Unicode/ ...
- dbrd 8.4.6 源代码编译安装
---------------------------- 0.系统环境 ---------------------------- db01 192.168.50.10 /dev/sdb1 主节点 db ...
- 进程控制函数(2)-setpgid() 修改当前进程的进程组ID
定义:int setpgid(pid_t pid,pid_t pgid); 表头文件:#include<unistd.h> 说明:setpgid()将参数pid 指定进程所属的组识别码设为 ...
- Qt学习过程中遇到的问题
由于工作需要,开始使用Qt,由于在网上找的教程文档时针对qt3的,所以在学习的过程遇到了许多由于版本不一致造成的问题,因此记录下来. 参考的文档是:Qt入门教程 详细讲解版 本机Qt版本为:Qt5.3 ...
- 【转】Linux中多线程wait使用注意
使用管道生成的while,是无法进行并发管理的 在处理日志的时候,采用管道多线程,怎么都实现不了wait功能,经上篇文章才知道,使用管道生成的while,无法进行并发管理. while read qu ...
- 深入学习HttpClient(一)扩展额外的功能
HttpClient作为.net4.5新增的Http库除了对于async/await形式的异步支持外,还向我们展示了其强大的扩展能力. [类库的设计] 让我们先看下Httpclient的设计图: 图中 ...
- OpenCV使用标定图
本文由 @lonelyrains 出品,转载请注明出处. 文章链接: http://blog.csdn.net/lonelyrains/article/details/46915705 上一步生成标 ...