【背景】:
1、jenkins部署maven工程做自动编译打包构建
2、工程集成了spring+springboot+mybatis
3、多模块方式部署maven工程,有一个总的pom工程。
4、总的pom工程由上游依赖(已install到仓库中)
【问题描述】:
构建此pom工程给多模块编译打包,报错
...I18nController.java:package org.springframework.web.bind.annotation does not exist.
...I18nController.java ..cannot find symbol..
...
【定位】:
1、初步排查应该是缺包导致的问题,根据代码报错找到为导入包为spring-web中的一个类找不到
2、因为继承jenkins构建使用的maven未配置localRepository,因此构建时下载的临时仓库在slave的WORKSPACE下的m2chche目录下。
3、可以明确在该m2chche种找到spring-web对应版本已下载的jar包。
4、在jenkins执行日志中,搜索加载到的"org/springframework/spring"时,其他的spring-jdbc,spring-tx,spring-core,spring-aop等包都能查到,但是查不到spring-web的。
5、根据spring boot的pom文件往上找依赖,在spring-boot-starter 找到spring-boot-starter-web,在往上找到spring-web的依赖,scope配置的 compile
至此暂没有头绪了。
【求助】:请教大家了解maven的朋友,给点指导,谢谢!