springboot~mvn多个关联项目打包问题
使用maven进行构建项目时,有时会把公共对象和方法抽象在一个common公用项目里,而其它项目直接依赖它即可,而在common项目配置需要注意一下,因为springboot生成的jar默认是可执行的jar包,所以在其它子项目编译时,会因为引用common失败而导致当前项目不能成功编译,而只能去根项目进行mvn install来可以,这事实上很麻烦,所以今天主要解决一下这个问题。
编译出现的错误
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile) on project projectA: Compilation failure
解决方案
如果你的common里的main入口方法时
在common项目的pom.xml里添加如下配置
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>repackage</goal><!--供其它项目依赖的,不可执行的Jar包中 -->
</goals>
</execution>
</executions>
</plugin>
</plugins>
如果你的common里没有main方法,只是一些类库时
可以把plugin删除掉,然后在common里不要引用过类的包,应该在业务项目里引用这些包,否则会有包找不到情况
再进行编译,问题解决!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
2015-04-01 cmd命令查看端口和进程信息