- AndroidStudio3.0,gradle4.1庇楞,新建工程队塘,遇到如下錯誤:
Error:Unable to resolve dependency for ':app@debugAndroidTest/compileClasspath': Could not resolve com.android.support.test:runner:1.0.1.
Error:Unable to resolve dependency for ':app@debugAndroidTest/compileClasspath': Could not resolve com.android.support.test.espresso:espresso-core:3.0.1.
解決辦法:
打開 build.gradle
文件芹橡,在dependencies
中將
androidTestImplementation 'com.android.support.test:runner:1.0.1'
改為:
androidTestImplementation 'com.android.support.test:runner:0.2'
將
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'
改為:
androidTestImplementation 'com.android.support.test.espresso:espresso-core:2.2.2'
- 在AndroidStudio的terminal執(zhí)行
gradle -v
命令時衍腥,報
ERROR: JAVA_HOME is set to an invalid directory: Library/Java/JavaVirtualMachines/jdk1.8.0_161.jdk/Contents/Home
Please set the JAVA_HOME variable in your environment to match the
location of your Java installation.
我用的是mac盏缤,以上報錯原因是jdk環(huán)境變量配置有錯誤绪穆。
執(zhí)行open ~/.bash_profile
辨泳,打開.bash_profile文件虱岂,將下列粘進去。如果沒有.bash_profile文件菠红,自己創(chuàng)建一個第岖,在~目錄下。
GRADLE_USER_HOME=/Users/liangxinyu/Documents/gradle-4.6
export GRADLE_USER_HOME
export PATH=$PATH:$GRADLE_USER_HOME/bin
JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_161.jdk/Contents/Home
PATH=$JAVA_HOME/bin:$PATH:.
CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:.
export JAVA_HOME
export PATH
export CLASSPATH
然后 執(zhí)行source ~/.bash_profile
,讓剛才修改的.bash_profile文件生效试溯。然后執(zhí)行java -version
,切換到其他目錄蔑滓,再執(zhí)行一遍java -version
,此時遇绞,jdk環(huán)境變量就配好了键袱。
切回AndroidStudio的terminal執(zhí)行gradle -v
,順利完成摹闽,不再報錯蹄咖。
- rebuild的時候人、遇到如下錯誤:
Error converting bytecode to dex: Cause: com.android.dex.DexException: Multiple dex files define
報錯原因:第三方包重復導入付鹿,我添加了lib澜汤,同時在build.gradle中添加了依賴,導致同樣的包重復導入舵匾。刪掉其中一個就好了银亲。
- 打開相機時報如下錯:
sorry. android camera encountered a problem.you may need to restart the device.
原因:在Android6.0以上版本中,打開相機需要先申請權限纽匙,報錯的原因是既沒有在代碼中申請權限务蝠,也沒有在手機設置中手動開啟權限。
- 編譯的時候AndroidManifest.xml(build目錄下的)命名空間報錯烛缔。
原因:AndroidManifest中有的地方寫錯了馏段,比如<intent-filter>
重復,或者位置不對(應該在某個activity標簽下)践瓷。仔細檢查AndroidManifest.xml
文件中有沒有寫錯的地方院喜,改過來rebuild就可以了。 - 把第三方工程引入項目時晕翠,報錯如下:
Project with path ':pullToRefresh' could not be found in project ':app'.
解決方案:
把第三方項目放到和app統(tǒng)計目錄下喷舀。
在app的build.gradle
中加入:
dependencies {
implementation project(':pullToRefresh')
}
在project的settings.gradle
中添加:
include ':pullToRefresh'