异常记录-Gradle依赖掉坑之旅
前言
最近在项目中遇到了一个问题,死活拉不下来依赖,耗费了一整天,感觉自己真是菜的抠脚。
没想到今天脑子一清醒,刷刷的问题逐个击破了。
问题描述:
项目成员添加了新的依赖,然后我这边项目拉下来,build了n次,都以失败告终。
unable to resolve dependency for app@......
解决方案:
一、本地依赖jar包。
直接去maven/google/mavenCentral中把这个包下载下来,然后添加到本地jar目录中。
二、使用自己新建本地maven仓库。
1.下载maven。
下载地址为:http://maven.apache.org/download.cgi
2.配置环境变量。
Mac系统的环境变量,加载顺序为:
/etc/profile /etc/paths ~/.bash_profile ~/.bash_login ~/.profile ~/.bashrc
当然/etc/profile和/etc/paths是系统级别的,系统启动就会加载,后面几个是当前用户级的环境变量。后面3个按照从前往后的顺序读取,如果~/.bash_profile文件存在,则后面的几个文件就会被忽略不读了,如果~/.bash_profile文件不存在,才会以此类推读取后面的文件。
这里配置在/etc/profile中。
JAVA_HOME="/Library/Java/JavaVirtualMachines/jdk1.8.0_241.jdk/Contents/Home"
export JAVA_HOME
CLASS_PATH="$JAVA_HOME/lib"
PATH=".$PATH:$JAVA_HOME/bin"
export ANDROID_HOME=/Users/fanggao/Library/Android/sdk
export A_NDK_ROOT=/Users/fanggao/Library/Android/sdk/android-ndk-r16b
GRADLE_HOME=/Users/fanggao/gradle/gradleUse
export GRADLE_HOME
export MAVEN_HOME=/Users/fanggao/apache-maven-3.6.3
export PATH=${PATH}:${GRADLE_HOME}/bin:${MAVEN_HOME}/bin:${A_NDK_ROOT}:${ANDROID_HOME}/platform-tools
~
配置好就可以使用了。
3.执行命令,下载maven库对应的文件。
mvn install:install-file -Dfile=jar包的路径 -DgroupId=gruopId中的内容 -DartifactId=actifactId的内容 -Dversion=version的内容 -Dpackaging=jar
例如: mvn install:install-file -Dfile=materialdatetimepicker-4.2.3.aar -DgroupId=com.wdullaer -DartifactId=materialdatetimepicker -Dversion=4.2.3 -Dpackaging=aar

这样,我们的包就下载好了。下载成功会显示成功路径。
/Users/fanggao/.m2/repository/com/wdullaer/materialdatetimepicker/4.2.3/materialdatetimepicker-4.2.3.pom
4.更改本地maven库地址。
找到maven路径中的setting文件,修改为我们刚刚的地址。
open -e apache-maven-3.6.3/conf/settings.xml

5.项目使用。
在项目根目录下的build.gradle文件中使用。

这样我们就可以正常添加依赖并使用了。

三、终极原因,依赖下载不下来,很有可能是网络设置问题。
进入.gradle文件,找到gradle.properties,注释掉代理,成功!
/Users/fanggao/.gradle/gradle.properties

原因是androidStudio的全局设置导致网络走的代理,所以一直访问不了库。
再设置studio的Http Proxy。

参考链接:
1.https://blog.csdn.net/qq_35427437/article/details/79835673
异常记录-Gradle依赖掉坑之旅的更多相关文章
- 异常记录-Dialog样式踩坑
好久没记录文档了,拖了老半个月,终于空下来时间,为了避免以后踩坑,必须记录记录. 背景: 为activity设置样式为弹窗activity 异常一: activity设置style后,布局不能够正常显 ...
- [Xamarin]我的Xamarin填坑之旅(一)
一想到明天是星期五,不对,是今天,心里就很激动,毕竟明天没课.激动之余,来写一篇博客,记录一下最近踏坑Xamarin开发校园助手APP的一些事儿.也许更像是一篇流水账. 在扯Xamarin之前,有必要 ...
- stm32填坑之旅 - stm32f103c8t6点亮板载贴片蓝色LED
转载请注明:https://www.cnblogs.com/rockyf/p/11691622.html 开篇 开篇一定要精彩,不然路人不理睬!下述是笔者作为arm小白的填坑之旅 没错,这个之前一直从 ...
- Docker 从入门到掉坑
Docker 介绍 简单的对docker进行介绍,可以把它理解为一个应用程序执行的容器.但是docker本身和虚拟机还是有较为明显的出入的.我大致归纳了一下,可以总结为以下几点: docker自身也有 ...
- Docker从入门到掉坑(二):基于Docker构建SpringBoot微服务
本篇为Docker从入门到掉坑第二篇:基于Docker构建SpringBoot微服务,没有看过上一篇的最好读过 Docker 从入门到掉坑 之后,阅读本篇. 在之前的文章里面介绍了如何基于docker ...
- Docker从入门到掉坑(四):上手k8s避坑指南
在之前的几篇文章中,主要还是讲解了关于简单的docker容器该如何进行管理和操作,在接下来的这篇文章开始,我们将开始进入对于k8s模块的学习 不熟悉的可以先回顾之前的章节,Docker教程系列文章将归 ...
- EasyTrader踩坑之旅总结
easytrader是用python写的可以调用主要券商完成自动化炒股的一个软件 ,但我用的是同花顺,在研究过程中,发现同花顺暂时调不通.后来搜索发现thstrade的源码作者说是easytrad ...
- React Native填坑之旅--Flow篇(番外)
flow不是React Native必会的技能,但是作为正式的产品开发优势很有必要掌握的技能之一.所以,算是RN填坑之旅系列的番外篇. Flow是一个静态的检查类型检查工具,设计之初的目的就是为了可以 ...
- webpack入坑之旅(六)配合vue-router实现SPA
这是一系列文章,此系列所有的练习都存在了我的github仓库中vue-webpack,在本人有了新的理解与认识之后,会对文章有不定时的更正与更新.下面是目前完成的列表: webpack入坑之旅(一)不 ...
随机推荐
- 租房数据分析,knn算法使用
import numpy as np import pandas as pd import matplotlib.pyplot as plt data = pd.read_excel('jiemo.x ...
- lumen laravel response对象返回数据
Route::get('home', function () { $content = "内容"; $status = 301; $value = 'text/html'; // ...
- HTML 的属性
HTML 属性赋予元素意义和语境. 下面的全局属性可用于任何 HTML 元 属性 描述 accesskey 规定激活元素的快捷键. class 规定元素的一个或多个类名(引用样式表中的类). cont ...
- java抓取东方财富股票数据(附源码)
背景 前段时间给朋友写了一个自动抓取同花顺股票数据的程序,不少人觉得不错. 这几天后台有粉丝给我留言让我也抓一下东方财富的数据,说东方财富的数据特别难抓,我还真不一定能搞得定. 本来我是一个德艺双磬且 ...
- Git操作文件的时候手贱了,怎么恢复?
我们在使用git的过程当中很难避免的一点就是手贱,因为人嘛总有犯错疏忽的时候,有时候一不小心就操作错了.我也经常遇到这种情况,所以这时候对git的了解和掌握就非常重要,即使操作错了,我们也可以通过gi ...
- 微服务调用之feign负载均衡及服务降级
一,负载均衡: feign已经集成了ribbon,将service1,service2在不同端口启动多个实例可以自动负载均衡 idea: application.yml中server.port: ${ ...
- vue-cli2.0创建项目步骤
Vue是近两年来比较火的一个前端框架(渐进式框架吧),与reactjs和angularjs三国鼎立,我不是职业前端,做过Vue,了解了一下React,听说过Angluar.我只能这么说,我来晚了,没经 ...
- AngularJS——ui-router
深究AngularJS--ui-router详解 原创 2016年07月26日 13:45:14 标签: angularjs / ui-router / ui-view 25043 1.配置使用ui- ...
- 使用js模拟点击,点击a链接 $("#abc ").click(); 无效的解决方案
摘要: 问题分析 点击A标签本身,并不会触发跳转到指定链接的事件,就是说,我们平时都是点击的A标签中的文字了. 所以要想用JS模拟点击A标签事件,就得先往A标签中的文字添加能被JS捕获的元素,然后再用 ...
- 手写Express.js源码
上一篇文章我们讲了怎么用Node.js原生API来写一个web服务器,虽然代码比较丑,但是基本功能还是有的.但是一般我们不会直接用原生API来写,而是借助框架来做,比如本文要讲的Express.通过上 ...