51CTO下载-Maven实战(完整版)maven权威指南笔记.docx

51CTO下载-Maven实战(完整版)maven权威指南笔记.docx

  1. 1、本文档共35页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
51CTO下载-Maven实战(完整版)maven权威指南笔记

第2章2.1.3 本地安装(win)1.设置 M2_HOME 2. 设置PATH为%M2_HOME%\bin 3.测试 cmd: mvn -v2.3 安装目录分析2.3.1 M2_HOME/conf/settings.xml: maven全局设置, 一般将其复制到~/.m2/目录下再修改2.4 设置HTTP代理2.5 eclipse插件m2eclipse安装地址: 常见问题:2.7 maven 安装最佳实践2.7.1 设置 MAVEN_OPTS环境变量, 值为: -Xms128m –Xmx512m ,为的是解决java.lang.OutOfMemeoryError异常, WIPS项目设置为:-Xms256m -Xmx512m -XX:MaxPermSize=128m2.7.2 配置用户范围的settings.xml(~/.m2下)2.7.3 不要使用IDE自带的MAVEN, 在window/preferences/maven/installations 中修改。第3章 Maven使用入门3.1编写POM (Project Object Model 项目对象模型)Groupid: 组: 一般为 公司名+项目名 com.google.myappArtifactid: 子项目(模块名)名Version: 版本号, SNAPSHOT表示不稳定版本使用插件archetype生成pom.xml:mvn archetype:create -DgroupId=org.sonatype.mavenbook.ch03 -DartifactId=simple -DpackageName=org.sonatype.mavenbook3.2 编写主代码主代码目录: src/main/java/编译代码: mvn clean compile3.3 编写测试代码测试代码目录: src/test/java/添加依赖:执行测试: mvn clean test3.4 打包和运行默认打成jar包 , 命令: mvn clean packageJar包可手动添加到别的项目中。 若要使其它 maven项目直接通过配置pom.xml文件引用这个jar(项目),则需要安装到maven本地仓库, 命令: mvn clean install生成可执行的jar包 : 使用 maven-shade-plugin 插件。配置完之后执行mvn clean install 命令之后,/target 目录下会有可执行的jar包3.5 使用Archetype 生成项目骨架Maven3: mvn archetype:generate3.6 m2eclipse简单使用导入Maven项目Import – Existing maven project-….创建Maven项目第4章 背景案例 注册系统第5章 坐标和依赖5.1 何为坐标(coordinates) (groupid, artfactid, version, packaging, classifier)中央仓库: 5.2 坐标详解Groupid: 公司项目Artifactid: 子项目(模块)Packaging: 打包方式 jar, war, pom等 默认为jar。Classifier: 用于构建输出附属构件,如XXX-javadoc.jar, XXX-sources.jar 可选5.4 依赖5.5 依赖范围 scope起因: 编译和执行测试maven项目 使用的classpath 和 运行maven项目的classpath可能不同Comile: 编译依赖范围(默认), 对编译、测试、运行三种classpath都有效Test:测试依赖范围, 只对测试classpath有效Provided:已提供依赖范围, 编译、测试classpath有效Runtime:运行时依赖范围, 测试、运行classpath有效System:系统依赖范围:和provided一致,但和本机绑定,不利于移植Import :导入依赖范围5.6 传递性依赖(transitive dependencies): 5.6.1 概念当项目需要A依赖, 而A又有自己的依赖时,pom文件中只要写A依赖,A依赖本身的各个依赖由A项目的pom文件维护,不需要手工再写5.6.2 传递性依赖和依赖范围设A依赖于B, B依赖于C, 则称 A对B是第一直接依赖, B对C是第二直接依赖,A对于C是传递性依赖5.7 依赖调解 (Dependency Mediation)原则1:路径最近优先选 X(2.0)原则2:第一声明者优先5.8 可选依赖,比如X是mysql依赖,Y是postgresql 依赖,则X,Y是可选依赖,依赖不会被传递到A。依赖版本界限:5.9 最佳实践5

文档评论(0)

book1986 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档