先说一下多模块的项目结构:
图有点菜,忽略
环境结构:
- 有一个项目为Demo0410:外层有个pom文件
- 项目内有4个模块
- 模块123均引用了模块4(在pom的dependencies中直接加了一个dependency)
<dependencies>
<dependency>
<groupId>com.demo</groupId>
<artifactId>模块4</artifactId>
</dependency>
</dependencies>
- 在demo0410的pom中也对模块4的版本做了管理
<dependencyManagement>
<dependencies>
<dependency>
<groupId>com.demo</groupId>
<artifactId>模块4</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
</dependencies>
</dependencyManagement>
要求:现在打包123模块中任意一个
这时我们打包时,会先出现两个问题,先说第一个
1.立马在idea的话右边的maven对应自己要打包的123模块中运行client与package会出现这个问题:
这时你需要做三件事:
因为你仓库中没有jar这个可以理解,没有问题,做这些事情就可以了:
1.在你的maven的安装setting.conf中添加本地仓库地址
2.在你的idea中file-》setting-》build-》maven中修改你的配置
3.在你的idea中的话可以直接右边maven中对应模块4的maven package 与maven install
这时你可以去你的maven仓库看看已经有自己的jar包
2.再次打包会出现依赖关系无法解决的错误
你这里需要选中你的demo最外层的总项目,运行maven client 与maven install 命令,也可以直接使用idea操作
恭喜你可以再次去尝试打包了
这时你再去你的项目模块下使用maven client 与maven package 就发现
激不激动
最后这一个操作不是太懂什么意思,为什么要这样干,如果你知道的希望可以留言告诉我,不胜感激。希望多多交流。