ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

Maven的了解与使用

Maven的了解与使用 一、Maven介绍1.1什么是MavenMaven 是一种软件项目管理工具1.2 Maven能做什么1.管理整个软件开发周期 --编译、测试、打包、安装、部署等2.帮助构建项目 开发人员只需要描述项目基本信息在一个配置文件中pom.xml。此外还提供了1 声明式依赖性管理2 集中的组件库管理3 文档的自动生成4 报告的自动生成设计原则Convention Over Configuration (约定优于配置)Maven的一个核心特性就是依赖管理。另一个则是项目的一键构建 构建 指的是项目从编译、测试、运行、打包、安装 部署整个过程都交给maven进行管理这个过程称为构建。一键构建 指的是整个构建过程使用maven一个命令install可以轻松完成整个工作。常用命令(熟悉关键字借助idea开发时能认识点击操作界面中的命令就好) ​清理命令clean清除编译生成的out或target目录 mvn clean ​编译命令compiler将源代码文件变成class文件生成target目录mvn compile ​打包命令package将项目打包为jar或warmvn package ​部署命令install包含前面所有过程命令 mvn install安装时跳过测试: mvn install -Dmaven.test.skiptrue二、 Maven的使用安装、配置环境2.1 Maven仓库远程仓库相当于互联网上的仓库远程仓库一般需要外网访问私服一般都是基于局域网访问本地仓库本地文件夹2.2 依赖添加运行流程:Maven项目在pom.xml文件中添加jar依赖坐标时会先从本地仓库查找判断是否存在如果没有指定坐标的jar那么就到配置文件安装包的conf目录中的settings.xml中配置的远程仓库默认配置的是中央仓库也就是Maven公司的jar仓库中下载下载成功后将jar添加到本地仓库缓存下次在其他项目中添加依赖时就可以直接引用然后引用到项目中仓库配置本地仓库在某盘中新建一个文件夹用作本地仓库然后再maven的安装目录下打开settings.xml文件配置该文件夹的路径例如 localRepositoryF:/localRepository/localRepository远程仓库打开settings.xml配置如下mirroridalimaven/idnamealiyun maven/nameurlhttps://maven.aliyun.com/nexus/content/repositories/central//urlmirrorOfcentral/mirrorOf/mirror目录结构src/main/java —— 在该目录下新建包存放项目的.java文件文件一定存放在包中 src/main/resources —— 存放项目资源文件如spring, mybatis配置文件以及其他静态资源文件.css/.js.....src/main/webapp—— 存放项目的web资源纯Java项目可以没有该目录如web.xmljspweb-info等src/test/java —— 存放所有单元测试.java文件如JUnit测试类src/test/resources —— 测试资源文件(该目录一般不需要)target —— 该目录由Maven自动运行时生成项目输出位置编译后的class文件会输出到此目录等同于一阶段out目录pom.xml——该文件由idea创建项目时生成maven项目核心配置文件配置项目依赖jar的坐标其他插件**注意项目中的目录命名的固定的手动添加目录时不能自定义名称注意大小写maven的概念模型坐标标签模板dependency依赖group组织artifact模块version版本号scope作用域用于明确jar添加的时机例dependency groupIdjar的组织名称组织名称可以是多级目录,目录使用.分层/groupId artifactIdjar的模块名称单级名称/artifactId versionjar的版本号单级数字目录名/version scopejar的依赖范围一般不需要配置只有个别需要配置/scope /dependency依赖范围默认引入 的jar包 ------- compile 【默认范围 可以不写】编译、测试、运行 都有效 servlet-api 、jsp-api ------- provided编译、测试 有效 运行时无效 防止和tomcat下jar冲突数据库驱动jar包 ---- runtime测试、运行 有效 junit ----- test 测试有效依赖范围由强到弱的顺序是compileprovidedruntimetest设置jdk编译版本插件配置插件配置 plugins !-- 依赖插件 -- plugin groupIdorg.apache.maven.plugins/groupId artifactIdmaven-compiler-plugin/artifactId version3.2/version configuration source1.8/source target1.8/target encodingUTF-8/encoding /configuration /plugin /pluginsTomcat插件plugin groupIdorg.apache.tomcat.maven/groupId artifactIdtomcat7-maven-plugin/artifactId version2.2/version !-- 插件配置选项可选项 -- configuration path//path port8080/port uriEncodingUTF-8/uriEncoding /configuration /plugin三、 Maven的使用重要3.1 Maven的安装3.1.1 Maven软件的下载为了使用Maven管理工具我们首先要到官网去下载它的安装软件。通过百度搜索“Maven“如下点击Download链接就可以直接进入到Maven软件的下载页面目前最新版是apache-maven-3.8.X版本因为3.6.0以上版本存在和idea2018的兼容问题所以本阶段使用3.6.0版本作为项目管理工具Apache-maven-3.6.0下载地址Index of /dist/maven/maven-32.1.2 Maven软件的安装Maven下载后将Maven解压到一个没有中文没有空格的路径下比如F:\software_java\apache-maven-3.6.0下面。 解压后目录结构如下bin:存放了maven的命令比如我们前面用到的mvn tomcat:run boot:存放了一些maven本身的引导程序如类加载器等conf:存放了maven的一些配置文件如settings.xml文件 lib:存放了maven本身运行所需的一些jar包 至此我们的maven软件就可以使用了前提是你的电脑上之前已经安装并配置好了JDK。2.1.3 JDK的准备及统一 已有就跳过我们所使用工具软件的统一JDK使用JDK8版本JDK环境:省略......2.1.4 Maven配置电脑上需安装java环境安装JDK1.7 版本 将JAVA_HOME/bin 配置环境变量path 我们使用的是JDK8相关版本配置 MAVEN_HOME可选 变量值就是你的maven安装 的路径bin目录之前一级目录在Path中添加%MAVEN_HOME%\bin上面配置了我们的Maven软件注意这个目录就是之前你解压maven的压缩文件包在的的目录最好不要有中文和空格。 再次检查JDK的安装目录如下图2.1.5 Maven软件版本测试通过 mvn -v命令检查 maven是否安装成功看到maven的版本为3.6.2及java版本为1.8即为安装成功。 找开cmd命令输入mvn –v命令如下图我们发现maven的版本及jdk的版本符合要求这样我们的maven软件安装就成功了。案例例如pom.xml文件?xml version1.0 encodingUTF-8? project xmlnshttp://maven.apache.org/POM/4.0.0 xmlns:xsihttp://www.w3.org/2001/XMLSchema-instance xsi:schemaLocationhttp://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd modelVersion4.0.0/modelVersion groupIdorg.example/groupId artifactIdday24_1/artifactId version1.0-SNAPSHOT/version packagingwar/packaging build plugins !-- 依赖插件 -- plugin groupIdorg.apache.maven.plugins/groupId artifactIdmaven-compiler-plugin/artifactId version3.2/version configuration source1.8/source target1.8/target encodingUTF-8/encoding /configuration /plugin plugin groupIdorg.apache.tomcat.maven/groupId artifactIdtomcat7-maven-plugin/artifactId version2.2/version !-- 插件配置选项可选项 -- configuration path//path port8080/port uriEncodingUTF-8/uriEncoding /configuration /plugin /plugins /build properties maven.compiler.source8/maven.compiler.source maven.compiler.target8/maven.compiler.target project.build.sourceEncodingUTF-8/project.build.sourceEncoding /properties /projectindex.html文件!DOCTYPE html html langen head meta charsetUTF-8 titleTitle/title /head body 哈喽 哈喽 /body /htmlweb.xml文件web-app xmlnshttp://xmlns.jcp.org/xml/ns/javaee xmlns:xsihttp://www.w3.org/2001/XMLSchema-instance xsi:schemaLocationhttp://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd version4.0 /web-app
返回列表