maven学习笔记.docx
- 文档编号:10128943
- 上传时间:2023-05-23
- 格式:DOCX
- 页数:55
- 大小:1.80MB
maven学习笔记.docx
《maven学习笔记.docx》由会员分享,可在线阅读,更多相关《maven学习笔记.docx(55页珍藏版)》请在冰点文库上搜索。
maven学习笔记
Maven学习笔记
1.下载与安装
1.maven下载地址:
http:
//maven.apache.org/download.html。
这个是maven的官网下载地址。
我下载的版本是3.0.3。
2.下载后解压,配置环境变量。
和配置jdk的环境变量的方法类似,我的电脑-->属性-->高级-->环境变量。
新建系统变量:
M2_HOME,值为解压后目录,例:
E:
\apache-maven-3.0.3。
在path里添加%M2_HOME%\bin。
3.检查maven是否安装成功:
打开命令提示符,输入mvn–version,查看maven是否安装成功。
出现以上提示表示maven安装成功。
2.了解maven的安装目录
3.搭建maven项目
本文创建的工程所在的目录是E:
\mavenDemo。
1.用maven命令创建一个简单的Maven的app项目。
在cmd中运行以下命令:
该工程的groupId是ce.demo.mvn,那么该工程的源文件会放在Java包ce.demo.mvn中。
artifactId是app,那么该工程根目录的名称为app。
2.当第一次执行该命令时,Maven会从central仓库中下载一些文件。
这些文件包含插件archetype,以及它所依赖的其它包,耐心等待就可以了。
执行成功后应该是这个样子的:
3.执行完毕后,在E:
\mavenDemo目录下会出现一个app的文件夹。
它的目录布局应该是这个样子的:
4.生成的工程里的pom.xml。
//maven.apache.org/POM/4.0.0" xmlns: xsi="http: //www.w3.org/2001/XMLSchema-instance" xsi: schemaLocation="http: //maven.apache.org/POM/4.0.0http: //maven.apache.org/xsd/maven-4.0.0.xsd"> //maven.apache.org 5.创建完成之后,就需要在cmd执行一些命令来验证了。 首先进入app目录,执行命令mvncompile。 然后会在该目录下发现新生成的目录target\classes,即编译后的class文件(包括它的包目录)就放在了这里。 再执行命令mvnpackage,在目录target中就会生成app-1.0.jar文件。 该文件的全名由如下形式确定: artifactId-version.packaging。 最后执行命令mvninstall,会将项目jar包安装到本地仓库中,以便其他项目使用。 4.Maven查找网络资源包jar的地址 5.Maven常用指令 5.1.创建Maven的普通java项目: mvnarchetype: create -DgroupId=packageName -DartifactId=projectName 5.2.创建Maven的Web项目: mvnarchetype: create -DgroupId=packageName -DartifactId=webappName -DarchetypeArtifactId=maven-archetype-webapp 5.3.编译源代码: mvncompile 5.4.编译测试代码: mvntest-compile 5.5.运行测试: mvntest 5.6.产生site: mvnsite 5.7.打包: mvnpackage 5.8.在本地Repository中安装jar: mvninstall 5.9.清除产生的项目: mvnclean 5.10.生成eclipse项目: mvneclipse: eclipse 5.11.生成idea项目: mvnidea: idea 5.12.组合使用goal命令,如只打包不测试: mvn-Dtestpackage 5.13.编译测试的内容: mvntest-compile 5.14.只打jar包: mvnjar: jar 5.15.只测试而不编译,也不测试编译: mvntest-skippingcompile-skippingtest-compile (-skipping的灵活运用,当然也可以用于其他组合命令) 5.16.清除eclipse的一些系统设置: mvneclipse: clean 6.设置HTTP代理 1.1.检测本地网络是否不能直接访问Maven的远程仓库,命令为pingrepo1.maven.org,截图如下: 1.2.要检查代理服务器是否畅通,比如现在有一个IP地址为192.168.10.117,端口为3267的代理服务, 我们需要先运行telnet192.168.10.1173267来检查该地址的该端口是否畅通,如果得道出错信息需要先获取正确的代理服务器信息,如果telnet连接正确,则输入ctrl+],然后q,回车,退出即可。 1.3.检查完毕之后,编辑~/.m2/settings.xml文件,代码如下: 添加代理配置如下: ... -- --> ... 这段配置十分简单,proxies下可以有多个proxy元素,如果你声明了多个proxy元素,则默认情况下第一个被激活的proxy会生效。 这里声明了一个id为my-proxy的代理,active的值为true表示激活该代理,protocol表示使用的代理协议,这里是http。 当然,最重要的是指定正确的主机名(host元素)和端口(port元素)。 上述XML配置中我注释掉了username、password、nonProxyHost几个元素,当你的代理服务需要认证时,就需要配置username和password。 nonProxyHost元素用来指定哪些主机名不需要代理,可以使用|符号来分隔多个主机名。 此外,该配置也支持通配符,如*表示所有以结尾的域名访问都不要通过代理。 7.Maven修改本地存储库位置 你也可以自定义本地仓库的位置,修改${user.home}/.m2/settings.xml: Xml代码 ... \java\repository ... 你还可以在运行时指定本地仓库位置: mvncleaninstall-Dmaven.repo.local=/home/juven/myrepo/ 8.Maven的依赖 1.依赖的认识: 相信通过以上的学习,已经对Maven有了初步的了解。 在构建第一个Maven项目时,已经在pom.xml这个文件中接触到了依赖,因为项目测试中需要依赖junit.jar包,构建项目的时候自动就通过依赖导入了junit.jar。 我们可以在Maven的仓库中来查找引入依赖的构件。 Maven仓库的地址为: 我们来看上例中pom.xml中的依赖配置: 依赖会包含基本的groupId,artifactId,version等元素,根元素project下的dependencies可以包含一个或者多个dependency元素,可以声明一个或者多个依赖。 (1)groupId,artifactId和version: 依赖的基本坐标,对于任何一个依赖来说,基本坐标是最重要的,Maven根据坐标才能找到需要的依赖。 (2)type: 依赖的类型,对应于项目坐标定义的packaging。 大部分情况下,该元素不必声明,其默认值是jar。 (3)scope: 依赖的范围。 (4)optional: 标记依赖是否可选。 (5)exclusions: 用来排除传递性依赖。 2.依赖范围: (1)compile: 编译依赖范围。 如果没有指定,就会默认使用该依赖范围。 使用此依赖范围的Maven依赖,对于编译、测试、运行三种classpath都有效。 (2)test: 测试依赖范围。 使用此依赖范围的Maven依赖,只对于测试classpath有效,在编译主代码或者运行项目的使用时将无法使用此类依赖。 典型的例子就是JUnit,它只有在编译测试代码及运行测试的时候才需要。 (3)provided: 已提供依赖范围。 使用此依赖范围的Maven依赖,对于编译和测试classpath有效,但在运行时无效。 典型的例子是servlet-api,编译和测试项目的时候需要该依赖,但在运行项目的时候,由于容器已经提供,就不需要Maven重复地引入一遍。 (4)runtime: 运行时依赖范围。 使用此依赖范围的Maven依赖,对于测试和运行classpath有效,但在编译主代码时无效。 典型的例子是JDBC驱动实现,项目主代码的编译只需要JDK提供的JDBC接口,只有在执行测试或者运行项目的时候才需要实现上述接口的具体JDBC驱动。 3.传递性依赖与排除依赖: 有时候我们设置依赖时,比如想引入struts2,就会自动把struts2所依赖的包统统导进来,这就是传递性依赖。 有时候这是好事,然而有时候我们不需要其中的一些传递性依赖,或者会引起包与包之间的冲突,我们可以使用exclusions元素声明排除依赖,exclusions可以包含一个或者多个exclusion子元素,因此可以排除一个或者多个传递性依赖。 如下例: 4.将本地包导入到仓库: 有时网上的依赖包不是特别得全,又或者网络太慢导致有些包下不下来,这是就需要将我们自己本地的包导入到仓库中,再设置依赖的时候根据我们导包时设置的坐标,就可以导入我们自己的jar包到项目中。 (1)在命令行界面输入: mvninstall: install-file-Dfile=jar包的路径名称-DgroupId=坐标-DartifactId=组名-Dversion=版本号-Dpackaging=jar。 这里举一个例子,把本地的mypager-1.0-GA.jar导入到仓库: 出现以下提示,说明本地包导入成功。 (2)但是注意看,它导入的路径是e: \apache-maven-3.0.3\lib,也就是说,执行成功后,jar包是导入了Maven的安装目录的lib下。 所以我们需要把mypager文件夹拷贝出来到我们自己的本地库里,也就是E: \work\maven\repos下。 然后在pom.xml里引入的时候,我们就可以这么写: 这一章的内容大部分是网上的讲解,直接看的话肯定不好理解。 建议自己搭一个简单的maven工程,在pom.xml里自己设置几个简单的依赖试试,比如写一个mysql的增删改查,你就需要导入mysql的jar包,就需要设置依赖导入啦。 然后再接着把项目扩大一点点的引入其他的包。 9.Maven统一版本号 10.Eclipse构建maven项目 1.安装m2eclipse插件: 在eclipse里构建maven项目,首先需要安装m2eclipse。 打开Eclipse,在菜单栏中选择Help->InstallNewSoftware 在Install窗口中点击Workwith后面的Add按钮 在弹出的AddSite窗口中: Name: m2e,Location: http: //m2eclipse.sonatype.org/sites/m2e 点击OK按钮 在列表中勾选MavenIntegrationforEclipse,点击next按钮。 勾选所有选项点击Finish按钮,等待安装。 安装成功后重新启动eclipse。 2.建立自己的资源库 一般情况下,下载的依赖包会自动存放在我的文档里,这样如果重装系统或者C盘出现什么问题,你的资源库就会出问题,以前下过的资源包以后又要重新下载,很麻烦。 所以我们最好在别的地方建立自己的资源库,并进行配置。 (1)进入到C: \Users\Administrator这个目录(xp和win7目录结构不一样,反正就是进入到用户文件夹),找到.m2这个文件夹。 进去拷贝settings.xml到你想指定的地方,我放到了E: \work\maven下。 (2)打开settings.xml,找到 --localRepository |Thepathtothelocalrepositorymavenwillusetostoreartifacts. | |Default: ~/.m2/repository --> 下面加一行: \work\maven\repos (3)建立repos文件夹。 (4)Eclipse里,window-->preferences-->Maven-->UserSetting下,修改为E: \work\maven\settings.xml (5)再进行编辑后,下载的资源包就会存放到你指定的目录下了。 3.在eclipse里配置maven: (1)设置m2eclipse插件所关联的Maven程序: 选择window-->preferences-->Maven,在右边选择Add…按钮,就会”按钮,就会弹出如下选择Maven安装目录的选择窗口,选中Maven的安装目录,然后点击“确定”按钮: (2)设置自定义本地仓库: 根据上图,找到UserSetting,UserSettings”节点,将它改为自己刚才设置的setting.xml的路径,如下图所示: 4.创建Maven工程,在菜单栏选择File->New->Other->Maven->MavenProject。 5.点击next,设置工作空间后再点击next,选择maven-archetype-quickstart,快速创建一个Maven的项目(如果创建一个web项目,要选择的是maven-archetype-webapp)。 6.设置GroupId: 项目或组织的唯一标识,ArtifactId: 工程名。 点击Finish,完成。 7.工程建立完成后的目录结构应该是这样的: 11.Eclipse使用maven构建web项目 11.1.Step-1 CreateasimplemavenProjectin Eclipse. 11.2.Step-2 SelectdefaultWorkspacelocation 11.3.Step-3 Selectthemavenarchetypeas: maven-archetype-webapp andclickonnext. 11.4.Step-4 FilloutbelowdetailsandclickFinish.ThisstepcreatedMavenProjectinyourEclipseEnvironment. 11.5.Step-5 Ifyouseeerror“Thesuperclass“javax.servlet.http.HttpServlet”wasnotfoundontheJavaBuildPathindex.jsp/CrunchifyMavenTutorial/src/main/webapp”then addApacheTomcattoyourTargetedRuntimes. 11.6.Step-6 YourMavenProjectshouldlooklikethis. 11.7.Step-7 Nowbuildprojectwith “MavenCleanInstall”tocheckthereisn’tanydependencyissuewithproject. 11.8.Step-8 DeployApplicationonApacheTomcatServer. Steps: ∙RightclickonServer->AddandRemove->SelectCrunchifyMavenTutorial->ClickFinish. ∙Starttomcatserver. 11.9.Step-9 Visit http: //localhost: 8080/CrunchifyMavenTutorial/index.jsp toseeyourresult. Andyouareallset. 12.在Eclipse中导入SVN库里的Maven项目 12.1.1. 安装maven插件 a) 下载maven http: //maven.apache.org/download.cgi b) 安装maven插件 Help --> Eclipse Marketplace -->Find Maven Window --> Performance --> Maven 配置相关项目 12.2.2. 添加SVN库 a) 安装SVN插件 Help --> Performance --> Find Subclipse b) 添加库: i. ii. iii. \ iv. 添加库http: //10.143.132.57/svn/PBU1-WLAN/DEV/UnicomProjects 12.3.3. 新建SVN项目 a) File --> New --> Other --> SVN b) c) d) 12.4.4. 转换项目类型 a) b) 项目已导入 12.5.5. 编译,运行,打包 a) b) c) d) 13.Eclipsemaven构建springMVC项目 13.1.背景介绍 对于初学者,用maven构建项目并不是一件容易的事,springmvc并不是MVC中的主流,但是本人觉得springmvc比struts要好用,真正做到了零配置。 一次使用,就放不下了。 13.2.准备工作 1.Eclipse3.7 2.maven 3.Eclipse需要安装maven插件。 url: maven- http: //download.eclipse.org/technology/m2e/releases 。 安装maven-3.0.4。 并且选择本地的maven,如下图: 13.3.构
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- maven 学习 笔记