背景:很多时候我们构建项目的时候,jar 包死活下不下来。。。
这时候可能需要我们手动去网站下载后安装到本地。
Maven
maven 手动安装第三方库
参考文档:Installing an artifact with a custom POM
mvn install:install-file -Dfile=path-to-your-artifact-jar -DpomFile=path-to-pom
// 或者指定版本
mvn org.apache.maven.plugins:maven-install-plugin:3.0.0-M1:install-file -Dfile=path-to-your-artifact-jar -DpomFile=path-to-pom
如果 jar 包是通过 maven 方式构建的,则我们可以省去 -DpomFile
但很遗憾的是,虽然能将 jar 和 pom 安装到本地库,但无法安装 pom 中的依赖,适用于仅此 jar 包下载不下来的情况,所依赖的 jar 还通过 idea maven 去自动下载。
Gradle
gradle 没有找到手动安装第三方库的方法,但是 gradle 可以直接使用 maven 的库!
repositories {
mavenLocal() // 直接使用本地 maven 仓库
}
使用 mavenLocal() 时 Gradle 默认会按以下顺序去查找本地的 maven 仓库:
USER_HOME/.m2/settings.xml >> M2_HOME/conf/settings.xml >> USER_HOME/.m2/repository。
注意,环境变量要加入 M2_HOME, 我们配环境时很多时候都是使用 MAVEN_HOME 或者直接在 path 中输入 bin 路径了,导致 mavenLocal 无法生效。
maven 的环境变量名为 M2_HOME
gradle 的环境变量名问 GRADLE_USER_HOME
安装位置
idea 中 maven 的默认安装位置 ~/.m2/wrapper/dists
,默认仓库位置 ~/.m2/repository
android studio 中 gradle 的默认安装位置 ~/.gradle/wrapper/dists
,默认仓库位置 ~/.gradle/caches/modules-2/files-2.1