百度网站关键词,微信网站开发登录,重庆做网站哪家好,wordpress dms一、Maven的作用
作用一#xff1a;下载对应的jar包
避免jar包重复下载配置#xff0c;保证多个工程共用一份jar包。Maven有一个本地仓库#xff0c;可以通过pom.xml文件来记录jar所在的位置。Maven会自动从远程仓库下载jar包#xff0c;并且会下载所依赖的其他jar包下载对应的jar包
避免jar包重复下载配置保证多个工程共用一份jar包。Maven有一个本地仓库可以通过pom.xml文件来记录jar所在的位置。Maven会自动从远程仓库下载jar包并且会下载所依赖的其他jar包保证规范、完整、准确。
groupId: 域名的反写artifactId: 项目的唯一的标识符实际对应项目的名称就是项目根目录的名称。version:jar的版本
作用二处理jar之间的冲突
jar包之间的冲突处理多个jar包之间的依赖关系也存在冲突的情况比如jar包A和jar包B所依赖的子jar包虽然是同一个但是依赖的版本不一致。Maven一般通过最短路径者优先和先声明者优先来解决这个问题。
最短路径指依赖树的深度深度越低优先级越高。声明的优先与否通过pom.xml的顺序来决定放在前面的优先级高。
作用三项目的模块化管理
每个开发者一个模块
作用四项目的分布式部署
单个计算机无法独立运行某个项目将项目进行拆分部署到多个计算机当中。利用多个计算机的存储资源和计算资源来处理某个项目Maven框架就可以自动化的构建分布式项目。
二、Maven是什么
Maven是一款自动化构建工具服务于项目构建和依赖管理。
1.构建是什么
纯java代码java代码编译得到.class文件web工程java代码部署到服务器实际项目java代码、框架配置文件、国际化等其他资源文件按照正确的目录结构部署到服务器中。(构建)
2.构建的环节
清理删除以前的编译结果为重新编译做好准备编译java - class文件测试测试关键环节确保项目没有关键性问题报告展示测试结果 打包将一堆文件打包为一个压缩文件用于部署到其他服务器安装在Maven环境下将打包的结果jar包或war包安装到本地仓库部署将打包的结果部署到远程仓库或将war包部署到服务器
3. 自动化构建
将编译、打包、部署、测试这些步骤交给Maven来做这个就是自动化构建。
三、使用Maven
配置maven环境变量修改maven远程仓库的网址改为国内的镜像网址 打开apache-maven/conf/settings.xml文件创建Maven本地仓库文件名建议为maven_rep修改本地仓库的地址为你创建的仓库路径localReposity修改阿里云镜像地址mirror修改Maven编译版本建议使用java 8 profile 在IDEA中修改maven配置 setting/build/build tools/maven 修改maven路径使用自己的maven,替换idea自带的修改maven配置文件settingxml路径 创建maven工程不要选择空项目使用new project build system: 选择mavengroupId: 公司域名倒写artifactId:项目名 目录结构 src/main: 主程序src/main/java: 源代码resources目录用于存放配置文件和资源文件test目录用于存放测试程序。external libraries: 已经下载的jar包 使用maven的lifecycle按钮来构建项目 添加一个打包插件让打包后的jar包包含我们运行代码时所用的依赖。这个配置看情况添加如果不需要可以注释掉。
在pom.xml中加入如下内容:
buildpluginspluginartifactIdmaven-assembly-plugin/artifactIdconfigurationdescriptorRefsdescriptorRefjar-with-dependencies/descriptorRef/descriptorRefs/configurationexecutionsexecutionidmake-assembly/idphasepackage/phasegoalsgoalsingle/goal/goals/execution/executions/plugin/plugins
/build四、核心概念
POM项目对象模型将java工程的相关信息封装成对象作为便于操作和管理的模型。对应的就pom.xml文件学习Maven就是学习pom.xml文件中的配置。约定的目录结构 约定 配置 编码 而Maven就是约定好了特定的目录结构注意不要轻易删除原有的目录结构。坐标groupId, artifactId, version- 公司项目模块名模块版本用来定位当前模块在本地仓库的位置。将gav三个向量连起来就是模块在本地仓库中的位置。注意每个点分割为一个文件夹。我们自己的maven工程必须执行install命令才会进入本地仓库。
1. 依赖管理
当前工程会到本地仓库根据坐标寻找所依赖的jar包。
直接依赖Hello 依赖 junit , HelloFriend 依赖 Hello间接依赖HelloFriend 间接依赖 junit
依赖的范围
provided: maintest目录下的代码都可以访问, 运行时无法访问compile: main, test运行时都可以访问test: 只有test目录下可以访问
统一管理包的版本
Maven可以通过给包的版本号设置一个变量的形式来动态设置包的版本便于包的升级换代。使用${变量名}的形式来统一修改。
2. 仓库
分类
本地仓库为当前本机电脑上的所有Maven工程服务远程仓库 私服个人搭建的中央仓库连接比较慢中央仓库的镜像: 架设在各个大洲为中央仓库分担流量
仓库中的文件
Maven的插件我们自己开发的项目的模块第三方框架或工具的jar包
3.生命周期
生命周期定义各个构建环节的执行顺序Maven靠这个自动化的执行构建命令。
clean生命周期清理site生命周期生成站点文档default生命周期compile - test compile - test -package - install 运行某个阶段时会将之前的各个阶段都执行一遍
插件
Maven核心只是定义了抽象的生命周期具体实现是插件实现的每个插件可以实现多个功能
五、继承
由于非compile范文的依赖信息是无法在外部工程中传递的。我们可以在父工程中引入相应的依赖比如junit。子工程中的模块会自动继承父工程的依赖关系我们可以在父工程中管理子工程的依赖。
可以在父工程里面的版本进行修改子工程会自动跟随父工程变化。同时也可以在父工程中修改依赖的范围(provided, compile, test)子工程也会随着变化。
注意因此在子工程中的依赖不添加版本号信息子工程跟随父工程变化即可。
六、聚合
可以在父工程中使用modules关键字聚合子工程聚合后可以在父工程中对所有子工程进行清理、编译、测试、打包等操作。
七、Maven酷站
权威网址http://mvnrepository.com/ 搜索需要的Jar包依赖信息http://search.maven.org
八、常见问题及解决办法
问题一如果下载过程中由于网速问题导致下载失败会生成一个xxxx.lastupdated的文件需要删除该文件后再重新刷新。
问题二not found class找不到类 / not found method jar包冲突问题手动使用exclusion关键字排除产生冲突的包。 文章转载自: http://www.morning.ydyjf.cn.gov.cn.ydyjf.cn http://www.morning.zymgs.cn.gov.cn.zymgs.cn http://www.morning.jypsm.cn.gov.cn.jypsm.cn http://www.morning.srtw.cn.gov.cn.srtw.cn http://www.morning.xrpwk.cn.gov.cn.xrpwk.cn http://www.morning.xrqkm.cn.gov.cn.xrqkm.cn http://www.morning.xirfr.cn.gov.cn.xirfr.cn http://www.morning.rsmtx.cn.gov.cn.rsmtx.cn http://www.morning.mfrb.cn.gov.cn.mfrb.cn http://www.morning.wyjpt.cn.gov.cn.wyjpt.cn http://www.morning.swkzr.cn.gov.cn.swkzr.cn http://www.morning.xshkh.cn.gov.cn.xshkh.cn http://www.morning.jrbyz.cn.gov.cn.jrbyz.cn http://www.morning.clbzy.cn.gov.cn.clbzy.cn http://www.morning.jjtwh.cn.gov.cn.jjtwh.cn http://www.morning.zckhn.cn.gov.cn.zckhn.cn http://www.morning.wfbs.cn.gov.cn.wfbs.cn http://www.morning.lxdbn.cn.gov.cn.lxdbn.cn http://www.morning.yjfmj.cn.gov.cn.yjfmj.cn http://www.morning.srltq.cn.gov.cn.srltq.cn http://www.morning.yksf.cn.gov.cn.yksf.cn http://www.morning.kpfds.cn.gov.cn.kpfds.cn http://www.morning.jhyfb.cn.gov.cn.jhyfb.cn http://www.morning.xpzkr.cn.gov.cn.xpzkr.cn http://www.morning.thbkc.cn.gov.cn.thbkc.cn http://www.morning.dfmjm.cn.gov.cn.dfmjm.cn http://www.morning.srkzd.cn.gov.cn.srkzd.cn http://www.morning.jpjpb.cn.gov.cn.jpjpb.cn http://www.morning.prysb.cn.gov.cn.prysb.cn http://www.morning.china-cj.com.gov.cn.china-cj.com http://www.morning.fwkjp.cn.gov.cn.fwkjp.cn http://www.morning.rqhbt.cn.gov.cn.rqhbt.cn http://www.morning.mszls.cn.gov.cn.mszls.cn http://www.morning.rdtp.cn.gov.cn.rdtp.cn http://www.morning.fkgqn.cn.gov.cn.fkgqn.cn http://www.morning.fbxlj.cn.gov.cn.fbxlj.cn http://www.morning.yrskc.cn.gov.cn.yrskc.cn http://www.morning.qsctt.cn.gov.cn.qsctt.cn http://www.morning.hrpjx.cn.gov.cn.hrpjx.cn http://www.morning.svtxeu.com.gov.cn.svtxeu.com http://www.morning.nmqdk.cn.gov.cn.nmqdk.cn http://www.morning.xglgm.cn.gov.cn.xglgm.cn http://www.morning.jokesm.com.gov.cn.jokesm.com http://www.morning.gwqcr.cn.gov.cn.gwqcr.cn http://www.morning.ymjrg.cn.gov.cn.ymjrg.cn http://www.morning.wjpsn.cn.gov.cn.wjpsn.cn http://www.morning.krswn.cn.gov.cn.krswn.cn http://www.morning.lyzwdt.com.gov.cn.lyzwdt.com http://www.morning.mnqg.cn.gov.cn.mnqg.cn http://www.morning.rklgm.cn.gov.cn.rklgm.cn http://www.morning.kcrw.cn.gov.cn.kcrw.cn http://www.morning.fkwp.cn.gov.cn.fkwp.cn http://www.morning.xpwdf.cn.gov.cn.xpwdf.cn http://www.morning.fstesen.com.gov.cn.fstesen.com http://www.morning.jydhl.cn.gov.cn.jydhl.cn http://www.morning.pnntx.cn.gov.cn.pnntx.cn http://www.morning.wfbnp.cn.gov.cn.wfbnp.cn http://www.morning.rrjzp.cn.gov.cn.rrjzp.cn http://www.morning.jlqn.cn.gov.cn.jlqn.cn http://www.morning.hxxwq.cn.gov.cn.hxxwq.cn http://www.morning.xqnzn.cn.gov.cn.xqnzn.cn http://www.morning.gycyt.cn.gov.cn.gycyt.cn http://www.morning.lqrpk.cn.gov.cn.lqrpk.cn http://www.morning.wjqbr.cn.gov.cn.wjqbr.cn http://www.morning.jzlfq.cn.gov.cn.jzlfq.cn http://www.morning.mcndn.cn.gov.cn.mcndn.cn http://www.morning.jsljr.cn.gov.cn.jsljr.cn http://www.morning.lrmts.cn.gov.cn.lrmts.cn http://www.morning.wyzby.cn.gov.cn.wyzby.cn http://www.morning.fpbj.cn.gov.cn.fpbj.cn http://www.morning.qynpw.cn.gov.cn.qynpw.cn http://www.morning.ns3nt8.cn.gov.cn.ns3nt8.cn http://www.morning.lbzgt.cn.gov.cn.lbzgt.cn http://www.morning.rdbj.cn.gov.cn.rdbj.cn http://www.morning.qsmch.cn.gov.cn.qsmch.cn http://www.morning.skbkq.cn.gov.cn.skbkq.cn http://www.morning.rkwlg.cn.gov.cn.rkwlg.cn http://www.morning.mwwnz.cn.gov.cn.mwwnz.cn http://www.morning.sthgm.cn.gov.cn.sthgm.cn http://www.morning.gcfg.cn.gov.cn.gcfg.cn