Maven基础
Maven基础
maven核心内容:依赖管理、
Maven是Apache组织的开源项目,是项目构建工具。用来管理jar包之间的相互依赖关系
Maven是一个项目构建和管理的工具,提供了帮助管理,构建,文档,报告,依赖,发布,分发的方法、可以方便的编译代码,进行依赖管理、管理二进制库等
1. maven的好处
maven的好处在于可以将项目过程规范化,自动化,高效化以及强大的可扩展性
利用maven自身以及其插件还可以获得代码检查报告,单元测试覆盖率,实现持续集成等等
坐标:作为jar包,如何给出坐标
举例:struts2-core-2.3.24.jar
Apache(公司)+struts2(项目名称)+2.3.24(版本信息)
maven项目中需要某一个jar包,只需要在maven项目中配置需要的jar包坐标信息。maven程序根据jar包坐标信息去jar包仓库中查找jar包
2. maven的好处如何实现
maven的两大核心:
** 依赖管理:对jar包管理过程
** 项目构建:项目在编码完成后,对项目进行编译,打包,测试,部署等一系列操作通过命令来实现
使用maven命令将web项目发布到tomcat
进入一个maven的web项目,执行命令mvn tomat:run
3. maven安装、配置本地仓库
maven程序安装前提:maven程序是java开发,需要安装jdk程序
mvn -v:查看maven版本信息
1) maven的下载安装
<1>下载maven:
下载后解压(解压目录路径最好不要有中文)
<2>解压后目录:
bin:可执行的脚本
lib:运行需要的依赖包
conf:配置文件
boot:
<3>配置maven的环境变量
MAVEN_HOME:xxxxxxxxx
PATH:xxxxxxxx\bin;
JDK环境变量必须配置
JAVA_HOME:maven项目会搜索改环境变量,否则无法运行
2) 配置本地仓库
仓库类型:本地仓库-->私服-->中央仓库
进入maven程序解压后的目录中
配置conf中的setting.xml文件
<localRepository>jar包的路径</localRepository>
4. maven项目标准目录结构
src:项目源码目录
main/java:项目源代码
main/resources:项目配置文件
main/webapp:js、css、jsp、web.xml等文件
test/:测试目录
target:
pom.xml:project object model maven项目核心配置文件
5. maven的常用命令
1. clean:清理
mvn clean
就是删除maven项目下的target目录,编译的class文件等
2. compile:编译
mvn compile
将项目中的.java文件编译为.class文件
3. test:单元测试
mvn test
将项目根目录下src/test/java目录下的单元测试类都会执行
对单元测试类的类名有要求:必须以Test.java结尾
4. package:打包
mvn package
web project --war包
java project --jar包
将项目打包,打包项目到根目录下target目录
5. install:安装
本地多个项目公用一个jar包
打包到本地仓库
6. maven项目的生命周期
在maven中存在三套声明周期,每一套声明周期都是相互独立的,互不影响。在一套声明周期中,执行后面的命令,前面的操作都会自动执行
CleanLifeCycle:清理的生命周期(clean)
defaultLifeCycle:默认声明周期(compile、test、package、install、deploy)
siteLifeCycle:站点声明周期(site)
6. maven整合web项目案例
1. eclipse配置maven



构建索引:

右击从新构建索引
2. 创建maven项目

maven project:创建maven项目或者父项目
maven module:创建maven子模块(子项目)
group id:公司名称 com.major
artifact id:项目名称 crm
Version:版本
Packaging:jar/pom/war 打包(pom父工程选择pom)
Name:
Description:
pom.xml添加信息
<!-- 添加jdk版本信息-->
1. <build>
2. <plugins>
3. <plugin>
4. <groupId>org.apache.maven.plugins</groupId>
5. <artifactId>maven-compiler-plugin</artifactId>
6. <configuration>
7. <source>1.7</source>
8. <target>1.7</target>
9. </configuration>
10. </plugin>
11. </plugins>
12. </build>
3. 查找依赖(直接查找本地仓库的包)

4. 依赖范围
添加依赖范围:默认是compile

单独执行mvn tomcat:run运行

debug run as 需要关联源码
5. maven整合struts2
添加插件(pom.xml右击maven-->添加插件)

添加struts2的依赖
Maven基础的更多相关文章
- maven基础知识
1.maven基础知识 1.1maven坐标 maven坐标通常用冒号作为分割符来书写,像这样的格式:groupId:artifactId:packaging:version.项目包含了junit3. ...
- maven 基础
maven安装链接 maven基础命令: 编译命令:mvn compile 测试命令:mvn test 清空命令:mvn clean 打包命令:mvn package 打包命令:mvn install ...
- Maven基础知识详解
1. 简介 Maven在Java领域的应用已经非常广泛了,有了Maven的存在是的开发人员在搭建.依赖.扩展和打包项目上变得非常简单. 2. Windows安装Maven 下载安装包 http ...
- maven基础学习-为什么要用maven,帮助解决了什么问题,怎么解决的,希望以后学习每个知识点都可以这样问下自己
maven基础学习 第1章 Maven介绍 1.1 什么是Maven 1.1.1 什么是Maven Maven 的正确发音是[ˈmevən],而不是"马瘟"以及其他什么瘟.Mave ...
- Maven——基础篇
Maven--基础篇 Maven出现前的问题 一个项目就是一个工程,而工程内一般是通过package包来分模块,比较用户模块,订单模块等,如果项目过于庞大,通过包模块来划分就不太合适,而应该拆分为模块 ...
- Maven 基础标签之版本管理和冲突解决
前言 我们在做java项目的时候由于jar包太多,我们就需要使用maven做项目管理,管理项目的jar包依赖,包括打包上线 maven基础 Maven 是一个项目管理工具,主要用于项目构建,依赖管理, ...
- Maven基础学习笔记
Maven基础学习笔记 下载链接 官网:https://maven.apache.org/ 所有版本:https://archive.apache.org/dist/maven/maven-3/ 阿里 ...
- Maven基础知识和环境搭建
基本概念和生命周期 Maven是现在流行的构建自动化工具,提供了软件构建过程中全生命周期的管理. 基础目录结构 基础目录结构如下: 根目录:存放pom.xml 和所有的子目录 ${basedir}/s ...
- Maven基础学习(一)—Maven入门
一.概述 Maven是一个项目管理工具,它包含了一个项目对象模型(Project Object Model),一组标准集合,一个项目生命周期(Project Lifecycle),一个依赖管 ...
随机推荐
- 【Python的迭代器,生成器】
一.可迭代对象和迭代器 1.迭代的概念 上一次输出的结果为下一次输入的初始值,重复的过程称为迭代,每次重复即一次迭代,并且每次迭代的结果是下一次迭代的初始值 注:循环不是迭代 while True: ...
- Web前端的路该怎么走?很迷茫
“路漫漫其修远兮,吾将上下而求索”,这句出自<离骚>. 虽然端午已过,但是还是不影响一个程序员想表(zhuang)达(boy)自己此刻心情的冲动. 偶然路过同事旁边,不(tou)小(kan ...
- javaCV开发详解之6:本地音频(话筒设备)和视频(摄像头)抓取、混合并推送(录制)到服务器(本地)
javaCV系列文章: javacv开发详解之1:调用本机摄像头视频 javaCV开发详解之2:推流器实现,推本地摄像头视频到流媒体服务器以及摄像头录制视频功能实现(基于javaCV-FFMPEG.j ...
- Bootstrap 常用组件汇总
Bootstrap 官方文档:http://www.bootcss.com/ Bootstrap Multiselect 多选下拉组件 官方文档:http://www.kuitao8.com/demo ...
- 由 “无法使用从远程表选择的 lob 定位符” 错误而引导出来的一系列问题解决方案
周一上班遇到一个数据加工问题:无法使用从远程表选择的 lob 定位符,由于数据源表不是自己的,不能对源数据做修改,于是我打起了存储过程的主意 我们公司的存过是分三步走,第一层是同步源数据,第二层是对一 ...
- ASP.NET MVC5(四):数据注解和验证
前言 用户输入验证的工作,不仅要在客户端浏览器中执行,还要在服务端执行.主要原因是客户端验证会对输入数据给出即时反馈,提高用户体验:服务器端验证,主要是因为不能完全信任用户提供的数据.ASP.NET ...
- MAC下解决eclipse卡顿或者运行慢的问题
提示:假设你已经装了固态硬盘,并且有至少8Gb的内存.如果没有的话,带来的性能提升可能不大. 1.eclipse中加载的SDK数量过多会导致程序运行缓慢,解决方法删除plaforms下面用不到的SDK ...
- 深入理解 JavaScript 事件循环(一)— event loop
引言 相信所有学过 JavaScript 都知道它是一门单线程的语言,这也就意味着 JS 无法进行多线程编程,但是 JS 当中却有着无处不在的异步概念 .在初期许多人会把异步理解成类似多线程的编程模式 ...
- udl文件测试数据库连接
直接建一个udl后缀的文件(新建txt文件,改后缀) 然后会默认有个小电脑标志,双击打开就可以看到,可以用来配置数据库连接信息,可以测试连接,如果连接通过,可以再用记事本打开这个udl文件,里面就有生 ...
- 原生js二级联动
今天说的这个是原生js的二级联动,在空白页面里动态添加并作出相对应的效果. 1 //创建两个下拉列表 select标签 是下拉列表 var sel = document.createElement(& ...