1.要求概述
目录
在使用maven多模块开发项目时,结尾的时候我需要对指定的一个子模块进行打包
2.问题详情
出现下面这种情况怎么办
明明在我的公共模块下已经可以看见它是pom已经是属于导入成功了的,但是另外一个子项目打包时是无法成功的
3.分析报错原因
可能此处将公共模块视为了一个pom文件进行下载 但是你的公共模块怎么可能是能够下载的 所以打包前的编译会出现错误
既然大概知道了原因那就去解决 在此处重新进行整理一下公共模块的pom文件 复制一份找一个还没有下载过pom文件的模块进行整理 发现复制过去竟然报错? 那是我的pom文件有问题吗?先将pom文件的报错部分进行解决 错误就是一个需要指定版本号的错误
4解决问题
解决文件报错 然后我将两份pom文件进行对比
发现就是一个版本指定的问题 随后对公共模块的pom文件进行修改 指定版本后发现在子模块中引用的公共模块起效了
此处我还是有疑问的 为什么我的父项目已经指定了springcloud的版本为什么还会出现版本问题呢 可能springcloud特别一点 需要进行指定版本
随后打包指定启动类(多模块打包需要指定启动类 否则会出现找不到或无法加载主类)
人呆了
突然发现之前的猜测没问题,中间只不过多了一个小插曲 那就继续解决问题吧
那只能使出杀手锏了 使用mvn 命令 前提条件:你需要配置了maven 的命令 你可以输入命令mvn -v 检测是否安装环境
首先根据当前项目的路径打开cmd即可 使用命令 mvn clean 进行缓存清除
5.完美解决
随后使用命令mvn install
他会根据你的项目进行一个解析 随后使用你的idea进行打包即可
然后就是打包成功 我只能说maven牛逼