我具有以下Maven项目结构:
- parent
- api
- ui
这两个API和UI都是Spring Boot项目。 API项目通过将maven-jar-plugin与分类器“ client”一起使用来部署额外的工件。 UI项目使用分类器“客户端”依赖于API项目。此客户端jar仅包含值对象类。
在构建项目并使用Maven运行测试时,一切正常(UI项目仅在api-client.jar中看到类)。
从IntelliJ中运行测试时,测试失败,因为UI项目正在尝试从API项目中加载Spring Boot类。
“ IntelliJ项目结构”对话框不仅显示了对api-client.jar的依赖关系,而且还显示了IntelliJ模块的依赖关系,这就是UI的类路径中所有API模块源都可用的原因。知道如何防止这种情况吗?
我已经尝试过<scope>runtime</scope>
,但没有成功。
致谢