SpringCloud多模块依赖打包问题

原文地址:

SpringCloud多模块依赖打包问题

Sping Cloud 生成jar的过程,一直提示找不到依赖关系

------------------------------

Maven:多模块打包报错 Failed to read artifact descriptor for xxx:jar

1)项目中有多个模块,例如:父模块1,子模块2,common模块。现在需要在子模块2中引用common模块中的内容。在已经成功将common模块的jar安装到本地仓库后,

编译子模块2 一直报错:Failed to read artifact descriptor for xxx:jar

解决问题如下:
一)在父模块1中将整个项目clean>compile>package>install 一遍。
二)在父模块中的pom中的build插件注释掉。
三)单独对common模块进行clean>compile>package>install
四)将父模块中的pom中的build插件放开。
五)重新单独对子模块2 进行编译,就不会报错了。

原因可能是被引用的模块如果采用springboot插件打包会将相关依赖包打进去,然后其他调用的模块也有相关的依赖包,会有冲突。





org.springframework.boot
spring-boot-maven-plugin



repackage





------------------------------

1/ parent 模块的pom文件中添加


   
     
         
         org.springframework.boot
         spring-boot-maven-plugin
         
           
               
                  repackage
               

           

         

     

   


2/common 模块(被依赖模块)的pom文件中添加

   
     
         org.springframework.boot
         spring-boot-maven-plugin
         
           
               
                  repackage
               

               
                exec
           

         

     

   


3/业务模块(依赖其他模块) 的pom文件中添加

   
     
         org.springframework.boot
         spring-boot-maven-plugin
     

   


--------------------- 

我的解决过程:
一)在父模块、common模块中的pom中的build插件注释掉。
二)在父模块1中将整个项目clean>compile>package>install 一遍。
三)单独对common模块进行clean>compile>package>install
四)重新单独对子模块2 进行编译。

然后java -jar运行成功。

告辞!

你可能感兴趣的:(spring,cloud)