在运行android迁移pytorch项目的github demo的第四个项目当中,我发现gradle下载的非常慢。按网上说的,更换了国内的仓库:
maven {
url 'https://maven.aliyun.com/repository/google' }
maven{
url 'https://maven.aliyun.com/repository/jcenter'}
仍然很慢。于是我又去研究gradle的一些细节:既然卡在下载pytorch-android.arr上,问题一定出在这附近。结果我发现,这个部分在gradle中是这么说的:
implementation 'org.pytorch:pytorch_android:1.6.0-SNAPSHOT'
implementation 'org.pytorch:pytorch_android_torchvision:1.6.0-SNAPSHOT'
关于snapshot的意思,大概是说,Maven 每次构建都会在远程仓库中检查新的快照版本。本地即使下载了,他也会去找,那么显然可能存在这样一种情况,国内的仓库毕竟是国外的镜像,它不会更新的这么快,甚至没有完善快照,导致gradle一直在找因而拖慢了速度。
因此,解决方案很简单:将code改为:
implementation 'org.pytorch:pytorch_android:1.6.0'
implementation 'org.pytorch:pytorch_android_torchvision:1.6.0'
(代码在build.gradle里改动)
即可。
这里不要用1.4.0版本,会出现与其他部分不能匹配的错误。