Maven
来源:互联网 发布:scala编程思想 pdf下载 编辑:程序博客网 时间:2024/06/04 18:31
Maven是Apache公司的一个开源项目,‘是项目构建工具,用来依赖管理
1.Maven的好处
同样的项目,实现功能一样,Maven项目大小远小于传统项目–Maven项目中没有jar包
2.Maven的好处如何实现
maven的两大核心:
1)依赖管理:对jar包管理过程2)项目构建:项目在编码完成后,对项目进行编译·测试·打包·部署等一系列的操作都通过命令来实现
3.Maven安装、配置本地仓库
maven程序安装前提:maven程序java开发,它的运行依赖jdk
3.1配置maven步骤
1)下载·安装maven2)解压到本地磁盘(不解压目录不能有中文,空格)3)配置环境变量 MAVEN_HOME:maven路径 path:;%MAVEN_HOME%\bin4)执行:mvn -v查看是否配置成功
maven文件含有:
bin)可执行的脚本命令conf)配置文件lib)maven项目运行需要的jar包
3.2配置本地仓库
1)创建一个本地仓库文件夹如:
2)配置本地仓库:让maven程序知道仓库在哪
./apache-maven-?.?.?/conf/settings.xml
<localRepository>D:\工具\Maven\local_repository</localRepository>
仓库
本地仓库:在程序员的笔记本上-->\本地仓库找不到\/前提:安装私服/-->私服:存在与局域网内的一台服务器,存jar包-->\私服也找不到\由Apache维护//-->中央仓库:在互联网上,存放了基本上所有开源的jar包,由maven团队维护 本地仓库-->中央仓库)前提:外网
4.Maven项目标准目录结构
src)项目源码 mian> java>主体程序源码 resources>项目需要的配置文件 webapp>放入页面素材(页面,css,js,image) test> java>单元测试类 target)不属于标准的目录结构 src编译后的存到target pom.xml)maven项目核心配置文件
5.Maven的常用命令
mvn tomcat:run
1)clean:清理 将项目根目录下的target目录清理掉2)compile:编译 将项目中的.java编译为.class文件3)test:单元测试 单元测试类名有要求:XxxxTest.java 将项目根目录下src/test/java目录下的单元测试类都会执行4)package:打包 web project ---war包 java project ---jar包 将项目打包,打包项目根目录下taget目录5)install:安装 解决本地多个项目公用一个jar包 打包到本地仓库6)在maven中存在“三套”生命周期,没一套生命周期相互独立,互不影响.在一套生命周期内,执行后面的命令,前面命令会自动执行CleanLifeCycle:清理生命周期 CleandefaultLifeCycle:默认生命周期 compile,test,package,install,deploysiteLifeCycle:站点生命周期 site
6.Maven整合web项目案例
1)配置eclipse中maven环境 1.1>配置m2e插件,mars2版本自带maven(eclipse有可能自带了) 打开:window>show View>Other
1.2>需要配置maven程序 打开:window>Maven>Installations >配置maven安装目录 1.3>配置userSetting:让eclipse知道maven仓库位置 打开:window>Maven>User Settings >配置maven中setting.xml文件的位置 >配置maven本地仓库位置
1.4>构建索引 打开:window>show View>Other 找到:Maven Repositories
2)Maven整合servlet
创建好的web项目,错误: 1>web.xml缺失 2>jdk编译版本1.5,在pom.xml中添加插件
3>创建servlet,servlet编译报错,原因: 缺失servlet-api-xx.jar包 4>查找依赖
5>依赖范围(了解) 添加依赖范围:默认是compile provided:运行部署到tomcat不在需要jar包 如果将servlet-api.jar设置为compile,打包后包含servlet-api.jar,war包部署到tomcat中存在servlet-api.jar包冲突.导致运行失败
解决 :
总结:如果使用到tomcat自带jar包,将项目中依赖作用范围设置为:provided
6>运行项目
调试:
通过工具生成web.xml
阅读全文
0 0
- Maven
- Maven
- Maven
- maven
- Maven
- Maven
- maven
- maven
- maven
- maven
- Maven
- maven .
- Maven
- maven
- maven
- maven
- MAVEN
- Maven
- JAVA架构师课程(大数据,分布式事物解决方案,大型互联网项目,大型金融项目,高并发集群解决方案)实战开发[技术 activeMQ,zookeeper,http,支付,团购,dubbox,stom]
- 社交网络分析算法(SNA)
- 数据库试题
- Programming学习3_前端学习路线
- smb协议详解和samba服务的配置
- Maven
- 设计模式——原型模式
- 基于mysql数据库的基础知识二
- poj2096[Collecting Bugs] 又懂了一点期望概率DP
- JZOJ 5417 方阵
- spark调优第二篇:spark内存溢出还可能是你的driver memory的内存内存不够
- 运行django的时候出现127.0.0.1:8080 服务器拒绝访问
- iOS日志记录当前文件的堆栈、类名、函数名、行号及文件路径等信息
- ubuntu16.04 编译kinfu_remake-master错误集锦