您现在的位置是:首页 > 故事语录 > 励志语录励志语录
maven 父工程(maven子工程继承父工程依赖)
队长网红网2022-11-10 23:08:41励志语录150人已围观
简介maven父工程(maven子工程继承父工程依赖),本文通过数据整理汇集了maven父工程(maven子工程继承父工程依赖)相关信息,下面一起看看。前言Maven的父子项目就是这样搭建的,或者说这个概念,是最近一个项目遇到才知道的。我写了这么多年代码白写了,但也反映了我对一些基础知识的欠缺。趁着现在项目的需要,我就想补充一下这个知识点。目录父子工程的施工步骤主体3.1父子工
maven 父工程(maven子工程继承父工程依赖),本文通过数据整理汇集了maven 父工程(maven子工程继承父工程依赖)相关信息,下面一起看看。
前言
Maven的父子项目就是这样搭建的,或者说这个概念,是最近一个项目遇到才知道的。我写了这么多年代码白写了,但也反映了我对一些基础知识的欠缺。趁着现在项目的需要,我就想补充一下这个知识点。
目录
父子工程的施工步骤
主体
3.1父子工程的施工步骤
以下所有程序都是用IDEA构建的,
母项目建设
对于父项目,只需要构建一个普通的Maven项目。步骤如下:
1.文件-新建-项目
2.选择Maven,直接点击下一步按钮。
3.填写与项目相关的信息。
4.至此,一个新的父Maven项目已经成功构建。目录结构和初始pom文件如下:
接下来,我们需要根据项目需求,在父项目的pom中添加相关的资源依赖管理。让我们以spring-cloud项目依赖为例。
5.添加spring-cloud的依赖管理,在pom文件中添加以下内容:
packaging POM/packagingdependencyManagement依赖项依赖项groupIdorg.springframework.boot/groupId artifact id spring-boot-dependencies/artifact id version2.2.0.RELEASE/version type POM/type scope import/scope/dependency依赖项groupIdorg.springframework.cloud/groupId artifact id spring-cloud-dependencies/artifact id versionHoxton.RELEASE/version type POM/type scope import/scope/dependency/dependency management
至此,父项目和依赖项都已完成。下一步是构建子项目。
子项目的建设
子项目的共同建设
在父项目中,我们添加了dependencyManagement标签来引入spring-boot和spring-cloud的依赖关系,这样做的好处是可以帮助我们管理依赖的版本号。
首先,我们创建一个新的公共项目来引入项目所需的资源依赖,以避免子项目的重复引入。
新建一个模块就行了,后面的步骤就不一一展示了。该过程与父项目的过程相同。
创建新模块后,父项目的目录结构、公共文件和pom文件如下:
子项目公共的Pom文件内容
父项目的pom文件内容
我们会发现,在父项目的pom文件中,modules标签项是自动添加的;与此同时,我们的父节点被自动引入到公共节点的pom中。
我们将spring-boot和spring-cloud的依赖添加到common的pom文件中,common的pom完成如下:
骑乘作物xml版本='1.0 '编码='UTF-8 '?项目xmlns=' http://maven . Apache/POM/4 . 0 . 0 ' xmlns:xsi=' http://www . w3/2001/XML schema-instance ' xsi:schema location=' http://maven . Apache/POM/4 . 0 . 0 3358 maven . Apache/xsd/maven-4 . 0 . 0 . 0 . xsd '父artifactId spring-cloud-yl-demo/artifactId groupIdorg.yl.springcloudyldemo/组
我们会发现依赖关系中没有版本版本信息,因为它是由父项目管理的。当然,如果有必要,一些依赖项会自动为我们显示正确的版本号。
Spring-boot项目构建nacos-provider
文件-新建-模块
选择弹簧初始化。
填写相关项目信息:
仅在网站中选择此项目。
完成nacos-provider项目的新建后,我们需要手动修改两项:
1.在父项目的pom文件中,添加一个模块项。此时,模块中有两个项目,一个是新创建的公共项目,另一个是我们新创建的nacos提供商项目:
2.修改nacos供应商项目的pom文件。因为我们构建了spring-boot项目,所以默认情况下我们会自动加入spring-boot的父依赖项。但是,我们已经通过父项目管理了这一块,所以我们可以将父项目更改为我们自己的父项目,同时引入我们的公共项目。
修改前:
修改后:
修改后完成pom文件:
?xml版本='1.0 '编码='UTF-8 '?项目xmlns=' http://maven . Apache/POM/4 . 0 . 0 ' xmlns:xsi=' http://www . w3/2001/XML schema-instance ' xsi:schema location=' http://maven . Apache/POM/4 . 0 . 0 3359 maven . Apache/xsd/maven-4 . 0 . 0 . 0 . xsd ' model version 4 . 0 . 0/model version父groupIdorg.yl.springcloudyldemo/groupId artifact-从存储库中查找父级-/父级groupIdorj.yl/groupId artifactIdnacos-provider/artifactId version 0 . 0 . 1-SNAPSHOT/版本名称nacos-provider/名称描述Spring Boot的演示项目/描述属性Java . version 1.8/Java . version/properties依赖项groupIdorg.yl.springcloudyldemocommon/groupId artifactId spring-cloud-yl-demo-common/artifactId version 1.0-SNAPSHOT/version/dependencies/dependencies构建插件groupIdorg.springframework.boot/groupId artifactId spring-boot-maven-plugin/artifactId/plugins/build/project
此时,我们在父项目的目录下执行mvn -U clean install,输出信息如下:
这是成功的。接下来,我们需要开始我们的nacos提供商项目。
可惜项目无法启动,错误如下:
很奇怪,我们的春靴相关包不存在。我们共同介绍过。为什么不存在?
检查我们删除的依赖项:
发现没有我们的common,所以问题很明显,就是nacos-provider没有引用我们的common,所以没有引用其他的依赖。
我的解决方案:手工将公共包生成的jar添加到子项目中。
在共同项目目标下
关于这个问题,我试过网上的方法,但是解决不了。
怎么解决?请留言告诉我。谢谢大家!
至此,我们的父子项目已经构建完毕,您可以用同样的方法创建任意数量的子项目。
更多maven 父工程(maven子工程继承父工程依赖)相关信息请关注本站,本文仅仅做为展示!
很赞哦! ()
相关文章
- ipod classic和video哪个好(ipod classic 与iphone音
- iphone 11能设置几个面容id(苹果11手机能设置几个面容
- ipd是项目管理流程(项目经理的职责和权限包括)
- idg资本合伙人年薪(idg中国7个合伙人名单)
- faceu什么时候出的(face id有几代)
- faceid可以设置几个脸(face id可以设置几个)
- epc项目管理师证书有用吗(考个EPC项目经理证书有用吗)
- 2021年Android面试题汇总(初级)-简书(android 2020 最
- 2020年钢架雪车再度成为奥运会正式比赛(直到2022002年
- 2020年摆摊最火爆小吃(2021摆摊小吃最火的项目)
随机图文
留言与评论 (共有 条评论) |