java程序编译打包出错 the version cannot be empty错误分析

开发的包编译打不过去,开发研究了1个小时搞不定,而且还一直说自己本地跑没问题啊。。。。。看来是指望不上了,还是老子自己研究吧。
报错如下所示:

Caused by: org.apache.maven.artifact.InvalidArtifactRTException: For artifact {org.springframework.data:spring-data-redis:null:jar}: The version cannot be empty.

看的出来是提示版本是空的,那应该是某块加载不到version导致,应该不是程序问题,所以我就怀疑到了pom.xml文件,由于这个程序是有两个pom.xml,一个外层的父pom.xml文件,一个是里面的main包下的子pom.xml文件。

百度了一番,并没有直接的答案,需要自己分析,这种问题大概就是父pom.xml文件加载不到version导致的,所以我就看父pom.xml文件,当然也要和子pom.xml文件对比,要找的关键段就是spring-data-redis这一段,仔细对比了一下发现在父pom.xml文件里面没有version这个关键的一行属性(子pom.xml文件是有的),这肯定不行,我自己加上。终于成功了。
父pom.xml文件的spring-data-redis一定要有version这行属性,子pom.xml是可以没有的。由于父pom.xml会调用子pom.xml文件,所以父pom.xml没有属性的话直接编译报错。
继续找开发反馈,得来一句:我错了哥,我忘了哥。。。

posted @ 2021-08-02 19:42  峰哥ge  阅读(7792)  评论(0编辑  收藏  举报