php 公司网站,水果网站模板,网站怎么才能吸引人,手机无人区离线地图app早些时候只知道创建或者开发springboot项目时候#xff0c;有一个叫pom.xml的文件可以用来管理项目所需的依赖/第三方工具。
索性稍微深入了解了一下#xff0c;然后把自己认为重要的记录下来。
首先我们要引入新的依赖自然是在dependencies下写dependency#xff0c;这个…早些时候只知道创建或者开发springboot项目时候有一个叫pom.xml的文件可以用来管理项目所需的依赖/第三方工具。
索性稍微深入了解了一下然后把自己认为重要的记录下来。
首先我们要引入新的依赖自然是在dependencies下写dependency这个dependency具体咋写可以去maven的中央仓库查对应的库然后粘过来。Lombok、jdbc等等都是这样来的。
每个dependency还都有依赖范围主要是compile、test、provided缺省为compile具体含义如下
依赖范围描述compile编译依赖范围scope 元素的缺省值。使用此依赖范围的 Maven 依赖对于三种 classpath 均有效即该 Maven 依赖在上述三种 classpath 均会被引入。例如log4j 在编译、测试、运行过程都是必须的。test测试依赖范围。使用此依赖范围的 Maven 依赖只对测试 classpath 有效。例如Junit 依赖只有在测试阶段才需要。provided已提供依赖范围。使用此依赖范围的 Maven 依赖只对编译 classpath 和测试 classpath 有效。例如servlet-api 依赖对于编译、测试阶段而言是需要的但是运行阶段由于外部容器已经提供故不需要 Maven 重复引入该依赖。runtime运行时依赖范围。使用此依赖范围的 Maven 依赖只对测试 classpath、运行 classpath 有效。例如JDBC 驱动实现依赖其在编译时只需 JDK 提供的 JDBC 接口即可只有测试、运行阶段才需要实现了 JDBC 接口的驱动。system系统依赖范围其效果与 provided 的依赖范围一致。其用于添加非 Maven 仓库的本地依赖通过依赖元素 dependency 中的 systemPath 元素指定本地依赖的路径。鉴于使用其会导致项目的可移植性降低一般不推荐使用。import导入依赖范围该依赖范围只能与 dependencyManagement 元素配合使用其功能是将目标 pom.xml 文件中 dependencyManagement 的配置导入合并到当前 pom.xml 的 dependencyManagement 中。
然后每个pom文件都有一个叫gavp的东西
!-- 模型版本 --
modelVersion4.0.0/modelVersion
!-- 公司或者组织的唯一标志并且配置时生成的路径也是由此生成 如com.companyname.project-groupmaven会将该项目打成的jar包放本地路径/com/companyname/project-group --
groupIdcom.companyname.project-group/groupId
!-- 项目的唯一ID一个groupId下面可能多个项目就是靠artifactId来区分的 --
artifactIdproject/artifactId
!-- 版本号 --
version1.0.0/version!--打包方式默认jarjar指的是普通的java项目打包方式 项目打成jar包war指的是web项目打包方式项目打成war包pom则代表这个项目作为父工程被其他工程聚合或者继承
--
packagingjar/pom/war/packaging说起父工程、子工程则二者的pom.xml中需要分别有 groupIdcom.atguigu.maven/groupIdartifactIdpro03-maven-parent/artifactIdversion1.0-SNAPSHOT/version!-- 当前工程作为父工程它要去管理子工程所以打包方式必须是 pom --packagingpom/packaging和
!-- 使用parent标签指定当前工程的父工程 --
parent!-- 父工程的坐标 --groupIdcom.atguigu.maven/groupIdartifactIdpro03-maven-parent/artifactIdversion1.0-SNAPSHOT/version
/parent!-- 子工程的坐标 --
!-- 如果子工程坐标中的groupId和version与父工程一致那么可以省略 --
!-- groupIdcom.atguigu.maven/groupId --
artifactIdpro04-maven-module/artifactId
!-- version1.0-SNAPSHOT/version --这样的话父工程管理的包子工程可以直接继承过来了。
然后还有搭建私服可以把自己团队开发的包传上去因为你不可能传到中央仓库那属于泄密了这个暂时没去了解之后有需要再说。