网站建设项目方案,企业网站建设技,做网站本溪,常德网站制作公司多少钱Maven简介
传统项目#xff1a; jar包不统一 不兼容 项目中有部分jar包会升级 没升级的部分会起冲突 管理复杂
Maven本质是一个项目管理工具 pom
POM Project Object Model 项目对象模型 把项目以对象形式进行管理 先写 pom.xml 的配置文件 代表一个项目
1个项目对应1个po…Maven简介
传统项目 jar包不统一 不兼容 项目中有部分jar包会升级 没升级的部分会起冲突 管理复杂
Maven本质是一个项目管理工具 pom
POM Project Object Model 项目对象模型 把项目以对象形式进行管理 先写 pom.xml 的配置文件 代表一个项目
1个项目对应1个pom.xml文件 8个项目对应8个pom.xml文件 dependency
pom使用 依赖管理dependency
本地仓库 保存公共信息 私服仓库 中央仓库
即依赖管理的东西都来自中央仓库 Build lifecycle phases
项目构建 构建生命周期 又叫构建阶段 通过Maven插件实现构建操作 一个构建过程包含若干插件 一个插件对应若干构建过程 插件
插件给的结果可能是jar包 也可能是源代码、帮助文档、war包、xml等 多个插件做不同的任务 产出不同的产物 Maven的作用 项目构建标准的 跨平台的 自动化的项目构建方式 依赖管理方便快捷得管理项目依赖的资源jar包避免资源间的版本冲突问题 统一开发结构提供标准的、统一的项目结构 下载与安装
官方网站 https://maven.apache.org/download.cgi Maven环境变量配置
依赖Java 需要配置JAVA_HOME 设置MAVEN自身运行环境 需要配置MAVEN_HOME
//配置仓库位置 settings.xml中 //本地仓库位置 //配置镜像仓库 全局setting与用户setting 公共配置 用户配置
第一个Maven项目(手工) pom.xml文件格式
?xml version1.0 encodingUTF-8?
projectxsi:schemaLocationhttp://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsdxmlnshttp://maven.apache.org/POM/4.0.0 xmlns:xsihttp://www.w3.org/2001/XMLSchema-instancemodelVersion4.0.0/modelVersiongroupId/groupIdartifactId/artifactIdversion/versionpackaging/packaging
/project
compile时生成target文件 clean时删除target
idea创建Maven工程
依赖传递 依赖具有传递性 直接依赖 间接依赖
依赖冲突 路径优先 层级越浅 优先级越高 声明优先 相同层级 配置顺序靠前覆盖靠后的 特殊优先 同级配置相同资源 可选依赖 控制别人能不能看到自己
dependency
optionaltrue/optional//为true时 被依赖时 不被知道我依赖了这个项目有点类似私有 但是只能可选自己项目的 子项目的依赖不能可选化 有此需求时 **排除依赖**
/dependency排除依赖 主动断开以来资源 被排除的资源无需指定版本 即自己的项目的子项目有不想要的依赖 使用排除依赖排除 控制自己不看别人
dependency
exclusions
exclusion
///要排除的坐标
/exclusion
/exclusions
/dependency依赖范围 主程序范围有效main 范围内 测试程序范围有效(test文件夹范围内) 是否参与打包(package指定范围内)
scope主代码测试代码打包(上线编程)范例compile(默认)YYYlog4jtestYjunitprovidedYYservlet-apiruntimeYjdbc
依赖范围具有传递性
生命周期 clean:清理工作 default:核心工作 例如编译测试打包部署等 site:产生报告 发布站点等
clean pre-clean clean post-clean
default compile test-compile test package install等
site pre-site site post-site site-deploy
插件 插件与生命周期内的阶段绑定 执行到生命周期的阶段时 其实就是执行插件 默认maven会设定预设功能 通过插件可以自定义其他功能
生命周期 是几岁 插件那一岁的时候干了什么事