Android Studio編譯問題-Error:Could not find org.jetbrains.trove4j
一般來說是AS加載各種包或者庫時失敗導致的,有可能是網絡原因。
因此我們更換默認的資源庫作爲下載源,
在項目的build.gradle中,系統默認提供的是:
buildscript {
ext.kotlin_version = '1.3.61'
repositories {
google()
jcenter()
}
}
allprojects {
repositories {
google()
jcenter()
}
}
我們替換成如下下載源:
buildscript {
repositories {
google()
mavenCentral()
maven{ url'http://maven.aliyun.com/nexus/content/groups/public/' }
maven{ url'http://maven.aliyun.com/nexus/content/repositories/jcenter'}
}
}
allprojects {
repositories {
google()
mavenCentral()
maven{ url'http://maven.aliyun.com/nexus/content/groups/public/' }
maven{ url'http://maven.aliyun.com/nexus/content/repositories/jcenter'}
}
}
今天早上打開AS,發現項目編譯不通過了。。。提示
Error:Could not find org.jetbrains.trove4j:trove4j:20160824
Error:SSL peer shut down incorrectly
真莫名其妙。。。
查閱資料,提供的解決方式大致有以下幾種:
1、在buildscript中加上這個 jcenter()
buildscript {
repositories {
jcenter()// 在這裏加
}
dependencies {
classpath 'com.android.tools.build:gradle:3.0.1'
}
}
但是,一般項目都有這個屬性了,仍然是報上面的錯。
2、修改gradle-wrapper.properties文件
將distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip
修改爲:distributionUrl=http://services.gradle.org/distributions/gradle-4.1-all.zip
有的同志,說這樣調整之後,重新編譯就通過了。但我的仍然是編譯不過。
3、項目build文件中repositories和allprojects括號中加上mavenCentral()
然後將 jcenter()改成
maven{ url'http://maven.aliyun.com/nexus/content/groups/public/' }
maven{ url'http://maven.aliyun.com/nexus/content/repositories/jcenter'}
最後是這個樣子:
-
buildscript {
-
repositories {
-
mavenCentral()
-
google()
-
// jcenter()
-
maven{ url'http://maven.aliyun.com/nexus/content/groups/public/' }
-
maven{ url'http://maven.aliyun.com/nexus/content/repositories/jcenter'}
-
}
-
dependencies {
-
classpath 'com.android.tools.build:gradle:3.0.1'
-
}
-
}
這樣就編譯通過了。
總結:個人認爲,在AS加載(引入)各種包、庫的時候,由於網絡限制等原因,導致加載失敗,這個時候,找個靠譜的第三方庫來作爲下載來源,纔是最有效的。