maven之相关概念
1、pom 含义:Project Object Model 项目对象模型 pom.xml 对于 Maven工程是核心配置文件,与构建过程相关的一切设置都在这个文件中进行配置。 2、坐标 (1)数学中的坐标: (2)Maven的坐标: ①groupid:公司或组织域名倒序+项目名 < groupid>com.gong.maven< /groupid> < artifactid>Hello< /artifactid> < version>1.0.0< /version>
< groupId>org.springframework< /groupId> (1)仓库的分类 (2)仓库中保存的内容:Maven工程 不管是什么样的 jar 包,在仓库中都是按照坐标生成目录结构,所以可以通过统一的方式查询或依赖。 4、依赖 当 A jar 包用到了 B jar 包中的某些类时,A 就对 B 产生了依赖,这是概念上的描述。Maven解析依赖信息时会到仓库中查找被依赖的jar包。 (1)依赖的范围 <dependency> groupId>org.springframework</artifactId>spring-testversion>4.3.7.RELEASEscope>test> > compile范围依赖 test范围依赖 ②从开发和运行这两个阶段理解compile 和 provided 的区别 》对主程序是否有效:有效 ③有效性总结 (2)依赖的传递性 (3)依赖的排除 ①情景举例 ②配置方式 > >com.atguigu.maven>HelloFriend>0.0.1-SNAPSHOTtype>jar>compileexclusions exclusion>commons-logging> > ③排除后的效果 (4)统一管理所依赖 .jar 包的版本 ①统一声明版本号 其中 atguigu.spring.version 部分是自定义标签。 ②引用前面声明的版本号 ? ③其他用法 (5)依赖的原则,解决jar包冲突 ②路径相同时先声明者优先 5、生命周期 (1)各个构建环节执行的顺序:不能打乱顺序,必须按照既定的正确顺序来执行。 他们相互独立。也可以直接运行 mvn clean install site 运行所有这三套生命周期。 每套生命周期都由一组阶段(Phase)组成,我们平时在命令行输入的命令总会对应于一个特定的阶段。比如,运行 mvn clean,这个 clean 是 Clean 生命周期的一个阶段。有 Clean 生命周期,也有 clean 阶段。 (5)Clean声明周期 (6)Default声明周期 (7)Site生命周期 这里经常用到的是 site 阶段和 site-deploy 阶段,用以生成和发布 Maven 站点,这可是 Maven 相当强大的功能,Manager 比较喜欢,文档及统计数据自动生成,很好看。 (8)插件和目标 例如:compile 就是插件 maven-compiler-plugin 的一个目标;pre-clean 是插件 maven-clean-plugin 的一个目标。 (1)现状 由于test范围的依赖不能传递,所以必然会分散在各个模块工程中,很容易造成版本不一致。 需求:统一管理各个模块工程中对Junit依赖的版本。 解决思路:将Junit依赖统一提取到“父”工程中,在子工程中声明Junit依赖是不指定版本,以父工程中统一设定的为准。同时也便于修改。 操作步骤:
②在子工程中声明对父工程的引用
③将子工程的坐标中与父工程坐标中重复的内容删除
④在父工程中统一管理Junit的依赖
⑤在子工程中删除Junit依赖的版本号部分
注意:配置集成后,执行安装命令时要先安装父工程。 7、聚合 (1)作用:一键安装各个模块工程。 ? ?(3)使用方式:在聚合工程的pom.xml 上点右键->run as->maven install 8、Maven工程自动部署 在pom.xml 中添加如下配置: <!--配置当前工程构建过程中的特殊设置 --> buildfinalName>AtguiguWeb 配置构建过程中需要使用的插件 --> pluginsplugin> cargo是一家专门从事启动Servlet容器的组织 --> >org.codehaus.cargo>cargo-maven2-plugin>1.2.3 针对插件进行的配置 configuration> 配置当前系统中容器的位置 --> container> containerId>tomcat6xhome>D:DevInstallapache-tomcat-6.0.39>existing 如果Tomcat端口为默认值8080则不必设置该属性 --> properties> cargo.servlet.port>8989 配置插件在什么情况下执行 executions> execution> id>cargo-run 生命周期的阶段 --> phase>installgoals 插件的目标 --> goal>run> > > 执行mvn deploy 命令 原文链接:https://blog.csdn.net/zxm1306192988/article/details/76209062 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |