当前位置: 首页 > news >正文

营销型网站工程优化公司内部流程

营销型网站工程,优化公司内部流程,中国建筑股份有限公司,jsp网站开发教学视频Maven 1. 初识Maven 2. Maven概述 Maven模型介绍 Maven仓库介绍 Maven安装与配置 3. IDEA集成Maven 4. 依赖管理 01. Maven课程介绍 1.1 课程安排 学习完前端Web开发技术后#xff0c;我们即将开始学习后端Web开发技术。做为一名Java开发工程师#xff0c;后端 Web开发技术…Maven  1. 初识Maven 2. Maven概述         Maven模型介绍         Maven仓库介绍         Maven安装与配置 3. IDEA集成Maven 4. 依赖管理 01. Maven课程介绍 1.1 课程安排 学习完前端Web开发技术后我们即将开始学习后端Web开发技术。做为一名Java开发工程师后端 Web开发技术是我们学习的重点。 后端Web开发技术的学习我们会先学习Java项目的构建工具Maven 1.2 初识Maven 1.2.1 什么是Maven Maven是Apache旗下的一个开源项目是一款用于管理和构建java项目的工具。 官网https://maven.apache.org/ Apache 软件基金会成立于1999年7月是目前世界上最大的最受欢迎的开源软件基金会也 是一个专门为支持开源项目而生的非盈利性组织。 开源项目https://www.apache.org/index.html#projects-list 1.2.2 Maven的作用 使用Maven能够做什么呢 依赖管理 统一项目结构 项目构建 依赖管理 方便快捷的管理项目依赖的资源(jar包)避免版本冲突问题 当使用maven进行项目依赖(jar包)管理则很方便的可以解决这个问题。 我们只需要在maven项目 的pom.xml文件中添加一段如下图所示的配置即可实现 统一项目结构 : 提供标准、统一的项目结构 在项目开发中当你使用不同的开发工具 (如Eclipse、Idea)创建项目工程时 若我们创建的是一个maven工程是可以帮我们自动生成统一、标准的项目目录结构 具体的统一结构如下 目录说明 src/main/java: java源代码目录src/main/resources: 配置文件信息src/test/java: 测试代码src/test/resources: 测试配置文件信息 项目构建 : maven提供了标准的、跨平台(Linux、Windows、MacOS) 的自动化项目构建方式 如上图所示我们开发了一套系统代码需要进行编译、测试、打包、发布这些操作如果需要反复进行 就显得特别麻烦而Maven提供了一套简单的命令来完成项目构建。 02. Maven概述 2.1 Maven介绍 Apache Maven是一个项目管理和构建工具它基于项目对象模型(Project Object Model , 简 称: POM)的概念通过一小段描述信息来管理项目的构建、报告和文档。 官网https://maven.apache.org/ Maven的作用 方便的依赖管理 统一的项目结构 标准的项目构建流程 2.2 Maven模型 项目对象模型 (Project Object Model)依赖管理模型(Dependency)构建生命周期/阶段(Build lifecycle phases) 1). 构建生命周期/阶段(Build lifecycle phases) 以上图中紫色框起来的部分就是用来完成标准化构建流程 。当我们需要编译Maven提供了一个编 译插件供我们使用当我们需要打包Maven就提供了一个打包插件供我们使用等。 2). 项目对象模型 (Project Object Model) 以上图中紫色框起来的部分属于项目对象模型就是将我们自己的项目抽象成一个对象模型有自己专 属的坐标如下图所示是一个Maven项目 坐标就是资源(jar包)的唯一标识通过坐标可以定位到所需资源(jar包)位置 3). 依赖管理模型(Dependency) 以上图中紫色框起来的部分属于依赖管理模型是使用坐标来描述当前项目依赖哪些第三方jar包 之前我们项目中需要jar包时直接就把jar包复制到项目下的lib目录而现在书写在pom.xml文件中 的坐标又是怎么能找到所要的jar包文件的呢 答案Maven仓库 2.3 Maven仓库 仓库用于存储资源管理各种jar包 仓库的本质就是一个目录(文件夹)这个目录被用来存储开发中所有依赖(就是jar包)和插件 Maven仓库分为 本地仓库自己计算机上的一个目录(用来存储jar包)中央仓库由Maven团队维护的全球唯一的。仓库地址https://repo1.maven.org/maven 2/远程仓库(私服)一般由公司团队搭建的私有仓库 当项目中使用坐标引入对应依赖jar包后首先会查找本地仓库中是否有对应的jar包 如果有则在项目直接引用如果没有则去中央仓库中下载对应的jar包到本地仓库如果还可以搭建远程仓库(私服)将来jar包的查找顺序则变为 本地仓库 -- 远程仓库-- 中央 仓库 2.4 Maven安装 认识了Maven后我们就要开始使用Maven了那么首先我们要进行Maven的下载与安装。 2.4.1 下载 下载地址https://maven.apache.org/download.cgi 在提供的资料中已经提供了下载好的安装包。如下 1.使用git工具克隆 git clone https://gitee.com/xyangge/floder-maven.git 2.访问我的码云https://gitee.com/xyangge/floder-maven.git 2.4.2 安装步骤 Maven安装配置步骤 解压安装配置仓库配置Maven环境变量 1、解压 apache-maven-3.6.1-bin.zip解压即安装 建议解压到没有中文、特殊字符的路径下。如课程中解压到 F:\java\maven 下。 解压缩后的目录结构如下 bin目录 存放的是可执行命令。mvn 命令重点关注conf目录 存放Maven的配置文件。settings.xml配置文件后期需要修改lib目录 存放Maven依赖的jar包。Maven也是使用java开发的所以它也依赖其他的jar 包 2、配置本地仓库 2.1、在自己计算机上新一个目录本地仓库用来存储jar包 2.2、进入到conf目录下修改settings.xml配置文件 1). 使用超级记事本软件打开settings.xml文件定位到53行 2). 复制标签粘贴到注释的外面55行 3). 复制之前新建的用来存储jar包的路径替换掉标签体内容 3、配置阿里云私服 由于中央仓库在国外所以下载jar包速度可能比较慢而阿里公司提供了一个远程仓库里面基本也 都有开源项目的jar包。 进入到conf目录下修改settings.xml配置文件 1). 使用超级记事本软件打开settings.xml文件定位到160行左右 2). 在标签下为其添加子标签内容如下 mirror idalimaven/id namealiyun maven/name urlhttp://maven.aliyun.com/nexus/content/groups/public//urlmirrorOfcentral/mirrorOf /mirror 注意配置的位置在 ... 中间添加配置。如下图所示 注: 只可配置一个(另一个要注释!) 不然两个可能发生冲突导致jar包无法下载!!!!!!! 4、配置环境变量 2). 在Path中进行配置 PATH环境变量的值设置为%MAVEN_HOME%\bin 3). 打开DOS命令提示符进行验证出现如图所示表示安装成功  mvn -v 03. IDEA集成Maven 我们要想在IDEA中使用Maven进行项目构建就需要在IDEA中集成Maven 3.1 配置Maven环境 3.1.1 当前工程设置 1、选择 IDEA中 File Settings Build,Execution,Deployment Build Tools Maven Maven home path 指定当前Maven的安装目录 User settings file 指定当前Maven的settings.xml配置文件的存放路径 Local repository 指定Maven的本地仓库的路径 (如果指定了settings.xml, 这个目 录会自动读取出来, 可以不用手动指定) 3、配置工程的编译版本为11 Maven默认使用的编译版本为5版本过低 上述配置的maven环境只是针对于当前工程的如果我们再创建一个project又恢复成默认的配置 了。 要解决这个问题 我们就需要配置全局的maven环境 3.1.2 全局设置 1、进入到IDEA欢迎页面 选择 IDEA中 File close project 2、打开 All settings , 选择 Build,Execution,Deployment Build Tools Maven 3、配置工程的编译版本为11 这里所设置的maven的环境信息并未指定任何一个project此时设置的信息就属于全局配置信息。 以后我们再创建project默认就是使用我们全局配置的信息。 3.2 Maven项目 3.2.1 创建Maven项目 1、创建一个空项目 2、创建模块选择Maven点击Next 3、填写模块名称坐标信息点击finish创建完成 4、在Maven工程下创建HelloWorld类 5、编写 HelloWorld并运行 public class HelloWorld {public static void main(String[] args) {System.out.println(Hello Maven ...);}} 3.2.2 POM配置详解 POM (Project Object Model) 指的是项目对象模型用来描述当前的maven项目。 使用pom.xml文件来实现 pom.xml文件 ?xml version1.0 encodingUTF-8?project xmlnshttp://maven.apache.org/POM/4.0.0xmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd!-- POM模型版本 --modelVersion4.0.0/modelVersion!-- 当前项目坐标 --groupIdcom.itheima/groupIdartifactIdmaven_project1/artifactIdversion1.0-SNAPSHOT/version!-- 打包方式 --packagingjar/packaging /project pom文件详解 pom文件的根标签表示当前maven项目声明项目描述遵循哪一个POM模型版本 虽然模型本身的版本很少改变但它仍然是必不可少的。目前POM模型版本是4.0.0坐标 、、 定位项目在本地仓库中的位置由以上三个标签组成一个坐标maven项目的打包方式通常设置为jar或war默认值jar 3.2.3 Maven坐标详解 什么是坐标 Maven中的坐标是 资源的唯一标识 , 通过该坐标可以唯一定位资源位置使用坐标来定义项目或引入项目中需要的依赖 Maven坐标主要组成 groupId定义当前Maven项目隶属组织名称通常是域名反写例如com.itheimaartifactId定义当前Maven项目名称通常是模块名称例如 order-service、goods serviceversion定义当前项目版本号 如下图就是使用坐标表示一个项目 注意 上面所说的资源可以是插件、依赖、当前项目。 我们的项目如果被其他的项目依赖时也是需要坐标来引入的。 3.3 导入Maven项目 方式1使用Maven面板快速导入项目 打开IDEA选择右侧Maven面板点击 号选中对应项目的pom.xml文件双击即可 方式2使用idea导入模块项目 File Project Structure Modules Import Module 找到要导入工程的pom.xml 04. 依赖管理 4.1 依赖配置 依赖指当前项目运行所需要的jar包。一个项目中可以引入多个依赖 例如在当前工程中我们需要用到logback来记录日志此时就可以在maven工程的pom.xml文件 中引入logback的依赖。具体步骤如下 1. 在pom.xml中编写标签 2. 在标签中使用引入坐标 3. 定义坐标的 groupId、artifactId、version dependencies!-- 第1个依赖 : logback --dependencygroupIdch.qos.logback/groupIdartifactIdlogback-classic/artifactIdversion1.2.11/version/dependency!-- 第2个依赖 : junit --dependencygroupIdjunit/groupIdartifactIdjunit/artifactIdversion4.12/version/dependency/dependencies 4. 点击刷新按钮引入最新加入的坐标 刷新依赖保证每一次引入新的依赖或者修改现有的依赖配置都可以加入最新的坐标 注意事项 1. 如果引入的依赖在本地仓库中不存在将会连接远程仓库 / 中央仓库然后下载依赖 这个过程会比较耗时耐心等待 2. 如果不知道依赖的坐标信息可以到mvn的中央仓库 https://mvnrepository.com/中搜索 添加依赖的几种方式 1. 利用中央仓库搜索的依赖坐标 2. 利用IDEA工具搜索依赖 3. 熟练上手maven后快速导入依赖 4.2 依赖传递 4.2.1 依赖具有传递性 早期我们没有使用maven时向项目中添加依赖的jar包需要把所有的jar包都复制到项目工程下。如 下图所示需要logback-classic时由于logback-classic又依赖了logback-core和slf4j 所以必须把这3个jar包全部复制到项目工程下 我们现在使用了maven当项目中需要使用logback-classic时只需要在pom.xml配置文件中添 加logback-classic的依赖坐标即可。 在pom.xml文件中只添加了logback-classic依赖但由于maven的依赖具有传递性所以会自动把 所依赖的其他jar包也一起导入。 依赖传递可以分为 1. 直接依赖在当前项目中通过依赖配置建立的依赖关系 2. 间接依赖被依赖的资源如果依赖其他资源当前项目间接依赖其他资源 比如以上图中 projectA依赖了projectB。对于projectA 来说projectB 就是直接依赖。而projectB依赖了projectC及其他jar包。 那么此时在projectA中也会将projectC的依 赖传递下来。对于projectA 来说projectC就是间接依赖。 4.2.2 排除依赖 问题之前我们讲了依赖具有传递性。那么A依赖BB依赖C如果A不想将C依赖进来是否可以做到 答案在maven项目中我们可以通过排除依赖来实现。 什么是排除依赖 排除依赖指主动断开依赖的资源。被排除的资源无需指定版本 dependencygroupIdcom.itheima/groupIdartifactIdmaven-projectB/artifactIdversion1.0-SNAPSHOT/version!--排除依赖, 主动断开依赖的资源--exclusionsexclusiongroupIdjunit/groupIdartifactIdjunit/artifactId/exclusion/exclusions /dependency 依赖排除示例 maven-projectA依赖了maven-projectBmaven-projectB依赖了Junit。基于依赖的传递 性所以maven-projectA也依赖了Junit 使用排除依赖后 4.3 依赖范围 在项目中导入依赖的jar包后默认情况下可以在任何地方使用。 如果希望限制依赖的使用范围可以通过标签设置其作用范围。 作用范围 1. 主程序范围有效main文件夹范围内 2. 测试程序范围有效test文件夹范围内 3. 是否参与打包运行package指令范围内 如上图所示给junit依赖通过scope标签指定依赖的作用范围。 那么这个依赖就只能作用在测试环 境其他环境下不能使用。 scope标签的取值范围 4.4 生命周期 4.4.1 介绍 Maven的生命周期就是为了对所有的构建过程进行抽象和统一。 描述了一次项目构建经历哪些阶 段。 在Maven出现之前项目构建的生命周期就已经存在软件开发人员每天都在对项目进行清理编译 测试及部署。虽然大家都在不停地做构建工作但公司和公司间、项目和项目间往往使用不同的方式 做类似的工作。 Maven从大量项目和构建工具中学习和反思然后总结了一套高度完美的易扩展的项目构建生命周 期。这个生命周期包含了项目的清理初始化编译测试打包集成测试验证部署和站点生成 等几乎所有构建步骤。 Maven对项目构建的生命周期划分为3套相互独立 clean清理工作。default核心工作。如编译、测试、打包、安装、部署等。site生成报告、发布站点等。 三套生命周期又包含哪些具体的阶段呢, 我们来看下面这幅图: 我们看到这三套生命周期里面有很多很多的阶段这么多生命周期阶段其实我们常用的并不多主 要关注以下几个 • clean移除上一次构建生成的文件 • compile编译项目源代码 • test使用合适的单元测试框架运行测试(junit) • package将编译后的文件打包如jar、war等 • install安装项目到本地仓库 Maven的生命周期是抽象的这意味着生命周期本身不做任何实际工作。在Maven的设计中实际任务 如源代码编译都交由插件来完成。 IDEA工具为了方便程序员使用maven生命周期在右侧的maven工具栏中已给出快速访问通道 生命周期的顺序是clean -- validate -- compile -- test -- package -- verify -- install -- site -- deploy 我们需要关注的就是clean -- compile -- test -- package -- install 说明在同一套生命周期中我们在执行后面的生命周期时前面的生命周期都会执行。 思考当运行package生命周期时clean、compile生命周期会不会运行 clean不会运行compile会运行。 因为compile与package属于同一套生命周 期而clean与package不属于同一套生命周期。 4.4.2 执行 在日常开发中当我们要执行指定的生命周期时有两种执行方式 1. 在idea工具右侧的maven工具栏中选择对应的生命周期双击执行 2. 在DOS命令行中通过maven命令执行 方式一在idea中执行生命周期 选择对应的生命周期双击执行 compile test package install clean 方式二在命令行中执行生命周期 1. 进入到DOS命令行 05. 附录 5.1 更新依赖索引 有时候给idea配置完maven仓库信息后在idea中依然搜索不到仓库中的jar包。这是因为仓库中的 jar包索引尚未更新到idea中。这个时候我们就需要更新idea中maven的索引了具体做法如下 打开设置----搜索maven----Repositories----选中本地仓库-----点击Update 5.2 清理maven仓库 初始情况下我们的本地仓库是没有任何jar包的此时会从私服去下载如果没有配置就直接从中 央仓库去下载可能由于网络的原因jar包下载不完全这些不完整的jar包都是以lastUpdated 结尾。此时maven不会再重新帮你下载需要你删除这些以lastUpdated结尾的文件然后maven才 会再次自动下载这些jar包。 如果本地仓库中有很多这样的以lastUpadted结尾的文件可以定义一个批处理文件在其中编写如下 脚本来删除 set REPOSITORY_PATHE:\develop\apache-maven-3.6.1\mvn_reporem 正在搜索...del /s /q %REPOSITORY_PATH%\*.lastUpdatedrem 搜索完毕 pause 操作步骤如下 1). 定义批处理文件del_lastUpdated.bat (直接创建一个文本文件命名为 del_lastUpdated后缀名直接改为bat即可 2). 在上面的bat文件上右键---》编辑 。修改文件 修改完毕后双击运行即可删除maven仓库中的残留文件
http://www.hkea.cn/news/14358192/

相关文章:

  • 建设三类人员报考网站网站内容管理
  • 各大网站平台发布信息怎么做简单的视频网站
  • 有没类似建设通的免费网站网站硬件方案
  • 织梦网站定制深圳建站费用
  • 网站开发时间计划网站手机版
  • 天津城乡住房建设厅网站首页什么都能买到的网站
  • 做网站设计的广告公司自己动手的网站
  • 百度怎么注册自己的网站简易的在线数据库网站模板
  • 泰州专业做网站的公司263网站建设
  • 横店影视城网站建设山西建工网登录
  • win2008 iis7创建网站管理员网站后台上传本地视频
  • 国内企业建站模板做iframe跳转怎么自适应网站
  • 杭州网站建设app蒙古文政务网站建设工作汇报
  • 网站建设行业2017东莞网络推广
  • 网站运营代理柘城县网站建设
  • 苏州市住房建设局网站淘宝装修免费模板有哪些网站
  • 2008vps做网站外链建设给网站起的作用
  • 做百度网站还是安居客网站深圳高端商场排名
  • 建设项目银行网站兴国电商网站建设
  • 网站策划的最终体现是什么wordpress单本小说源码
  • 早教网站模板安徽建设工程信息网官
  • 先备案还是先做网站珠海建设工程监督站网站
  • 新郑网站开发WordPress小程序导航主题
  • 免费生成图片的网站手机网络不稳定怎么解决
  • 汕头网站建设网站建设基于django的电子商务网站设计
  • 做的网站有广告共享影院 wordpress
  • 建站公司合同模板ih5 wordpress
  • 个人网站设计要求营销公司取名字大全
  • 接口网站开发有app怎么做网站
  • 广州网站建设全包网址大全网站