当我们开发需要引入本地的 jar 包时,很简单,通过 ide 配置就行了,但是如果使用 jenkins 等 ci 时,如果基建有私有仓库还好,否则本地 jar 包就是个大麻烦。
在使用 jenkins 时可以使用以下脚本实现引入本地 jar包
# 定义方法
function recursionJars() {
files=`ls ${1}`
for item in $files; do
currentFile="${1}/${item}"
pomFile="${currentFile%.*}.pom"
if [ -d ${currentFile} ]; then
recursionJars ${currentFile}
elif [ -e ${pomFile} ]; then
${JENKINS_HOME}/tools/hudson.tasks.Maven_MavenInstallation/maven3.9/bin/mvn install:install-file -Dfile=${currentFile} -DpomFile=${pomFile}
elif [ "${item##*.}" == 'jar' ]; then
${JENKINS_HOME}/tools/hudson.tasks.Maven_MavenInstallation/maven3.9/bin/mvn org.apache.maven.plugins:maven-install-plugin:2.5.2:install-file -Dfile=${currentFile}
fi
done
}
# 使用
recursionJars ${WORKSPACE}/lib