SpringCloud-Demo,遇到的一些问题(持续更新)

在此记录下,自己建springcloud项目是遇到的一些问题

1、创建模块后,pom文件导包错误

描述:maven-Denpendencies中,包的版本为unknown
原因:未定义包的版本

如果是从别处局部粘贴的pom.xml,注意version是否有${}占位符
有占位符的需要检查是否在properties中有定义对应的版本,如下图

<properties>
	<org.springframework.boot>2.6.3</org.springframework.boot>
</properties>

<dependency>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter</artifactId>
	<version>${org.springframework.boot}</version>
</dependency>

或者是不存在version标签,那对应的pom文件可能有依赖父pom,在父pom中已经定义了对应依赖的版本

若定义了版本依然有unknown
可以去maven仓库中把对应包的unknown版本删除,再重新导包

2、 创建模块时,依赖父项目,却无法执行mvn操作

报错信息:Non-resolvable parent POM
原因:找不到对应的父项目

先确定父项目中pom.xml中<packaging>是否为pom
其次确定子项目pom.xml中是否有relativepath标签

<relativePath></relativePath>

该标签用于查找父项目的pom.xml,首先去父目录中找pom.xml文件,如果有找到,会看对应的groupIdartifactId的坐标是否一致;如果没有,就会去仓库中找。若找不到,则会报错
若maven中项目,有下划红线must be "pom" but is "jar"
也是因为父项目pom.xml中packaging未定义为pom
补充packaging标签
pom ---------> 父类型都为pom类型
jar ---------> 内部调用或者是作服务使用
war ---------> 需要部署的项目
一般来说定义为pom的项目,没有代码需要编译,只是为了聚合工程和传递依赖用

3、 启模块时,报错

报错信息:Error creating bean with name 'requestMappingHandlerAdapter'
原因:多半是导入的依赖重复且版本不同,导致了冲突,冲突的包则无法导入

用idea的terminal或者是到对应模块的目录下打开cmd命令窗口,执行mvn dependency:tree -Dverbose>log/tree.txt(先确定对应目录下有log文件夹)该命令的作用是将模块内的dependency树打印到log文件夹下的tree.txt中,执行完成之后打开tree.txt文件

后缀带有 omitted for conflict with XXX说明该jar包与XXX版本冲突,jar包不会被导入
手动解决冲突,确定版本即可
更多情况是 该模块中的pom文件,每一个依赖都去设置了版本,导致不同依赖中相同的子包有不同的版本号,导致了冲突;解决办法:可以依赖相同的父依赖

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值