在使用jenkins 构建 java web项目过程中,出现失败,错误如下:
Failure to find xxxx.jar http://repo.maven.apache.org/maven2 was cached in the local repository
一眼看出是jar包没有下载 而出现的问题。
一般解决mavn jar包缺失,会在terminal里执行 mvn clean install 重新手动再下载一次。
如果远端仓库不可用了,那我们可以从之前的下载的仓库中将此jar 的repo copy 过来 ,再执行一次 mvn clean install
所以我就copy了一份,再terminal上运行 mvn clean install 没有问题。
但是用jenkins 构建就是报错,一直是这个错误。非常郁闷。
接下来我删除maven的仓库,想jenkins 再重新从internet 下载jar
mv ~/.m2 m2 #重命名一个效果
但是我再jenkins 构建的时候 发现jenkins没有重新下载 ;
我猜测jenkins 是自己建立了一个仓库。虽然我全局设置了maven的配置文件settings.xml
接下来就是去找这个.m2 ; 在jenkins的安装目录 /var/lib/jenkins下找到.......
然后就可以删除这个.m2 并重新构建,不成功也是可以使用第二种方法 copy repository
这个地方值得注意的是jenkins 在 /var/lib/jenkins 下生成的所有文件的 所有者、组都是jenkins,如果是copy repository,记得chown 所有的文件 ,避免权限问题
这样 这个问题就完美解决了。