在工作流程中,我需要经常切换git分支,但这使我在签出分支后启动项目时遇到很多错误。
我的主模块有几个模块依赖性,我认为它们之间的关系有点复杂,例如:
mainModule -> A -> X(version 1.0)
mainModule -> B -> X(version 1.2)
mainModule -> X(version 1.8)
签出分支后,我将运行我的项目,如果它可以正常运行,则classes
文件夹中的文件夹target
包括以下文件夹树:
classes
--com (java source code)
--config (config files)
--static (js code)
--templates (html page)
如果遇到错误,则classes
目录仅包含Java源代码,文件结构如下:
classes
--com (java source code)
如您所见,缺少三个文件夹,然后在项目启动时收到错误消息,因为缺少了我的代码需要的配置文件。
在大多数情况下,删除属于mainModule / A / B / X的target
文件夹后,我的项目可以正常工作。但是我不知道为什么这种方法今天不起作用。
我认为这不是Maven的问题,因为我可以将所有文件保存在手动打包的WAR中。我确实通过将所有X依赖项更改为版本1.8(最新版本)解决了这个问题,但是我的同事告诉我,他不希望所有模块都依赖同一版本,因为在大多数情况下这不是必需的。
在IntelliJ中是否有解决此问题的解决方案?为什么IntelliJ打包错误的WAR文件?