书到用时方恨少,事非经过不知难。这篇文章主要讲述Gradle android无法找到符号Context相关的知识,希望能为你提供帮助。
我有一个java + kotlin android项目,可以在Android Studio中构建和运行。我现在正在设置CI,需要从终端运行Gradle。但是当我运行./gradlew :app:lint
时,我得到了很多这样的错误:
symbol:class Context
location: class ConnectivityMonitor
e: /*******/LocalAppHistory.java:20: error: cannot find symbol
public boolean hasSeenOnboarding(Context context) {
^
我为
Context, CognitoUserSession, Typeface, CognitoCachingCredentialsProvider...
和其他更多的错误得到了同样的错误。它仅适用于app
项目而不适用于其他模块。The
app
gradle.build
file:apply plugin: 'com.android.application'
apply plugin: 'kotlin-android-extensions'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-kapt'android {
compileSdkVersion 27
buildToolsVersion "27.0.3"defaultConfig {
applicationId "****"
minSdkVersion 21
targetSdkVersion 27
versionCode 48
versionName "1.3.0-dev"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
renderscriptTargetApi 18
renderscriptSupportModeEnabled true
multiDexEnabled true
}
buildTypes {
release {
minifyEnabled false
}
}testOptions {
unitTests.returnDefaultValues = true
}
}dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation project(':corentiumio')
implementation project(':uicomponents')
implementation project(':core')
implementation project(':localrepo')
implementation project(':cloudio')
implementation('com.crashlytics.sdk.android:crashlytics:2.6.6@aar') {
transitive = true
}
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
implementation 'com.android.support:appcompat-v7:27.1.1'
implementation 'com.android.support:animated-vector-drawable:27.1.1'
implementation 'com.android.support:design:27.1.1'
implementation 'com.android.support:support-v4:27.1.1'
implementation 'com.android.support.constraint:constraint-layout:1.1.0'
implementation 'com.amazonaws:aws-android-sdk-core:2.4.2'
implementation 'com.amazonaws:aws-android-sdk-ddb:2.2.22'
implementation 'com.amazonaws:aws-android-sdk-ddb-mapper:2.2.22'
implementation 'com.amazonaws:aws-android-sdk-cognito:2.4.2'
implementation 'com.amazonaws:aws-android-sdk-cognitoidentityprovider:2.4.2'
implementation 'com.google.android.gms:play-services-places:15.0.0'
implementation 'com.google.android.gms:play-services-maps:15.0.0'
implementation 'com.google.android.gms:play-services-location:15.0.0'
implementation 'uk.co.chrisjenx:calligraphy:2.3.0'testImplementation 'commons-logging:commons-logging:1.2'
testImplementation 'junit:junit:4.12'
testImplementation 'org.mockito:mockito-core:2.13.0'
testImplementation 'org.robolectric:robolectric:3.5.1'
androidTestImplementation 'com.google.code.findbugs:jsr305:3.0.2'
androidTestImplementation('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
androidTestImplementation('com.android.support.test:runner:0.5') {
exclude group: 'com.android.support'
}
androidTestImplementation('com.android.support.test:rules:0.5') {
exclude group: 'com.android.support'
}
androidTestImplementation('com.android.support.test.espresso:espresso-intents:2.2.2') {
exclude group: 'com.android.support'
}
}
答案我可能错了,一旦我从Kotlin编译器切换git分支时遇到此错误,找不到符号。
我做了清除缓存然后它工作,
rm -rf $HOME/.gradle/caches/
在切换分支以前的分支文件缓存时似乎创建了此问题。
【Gradle android无法找到符号Context】如果你想要试一试。
推荐阅读
- 使用Android Studio 3.1和build构建项目时出错(gradle 3.1.0)
- Android Studio 3.1 gradle build抛出java.util.zip.ZipException
- Android Studio 3.1陷入“Building *** Gradle项目信息”
- 添加Android特定外部库
- 当内部类依赖于R.java时,Gradle在Android Javadocs中排除R.java
- 关于最新的android studio 3.0.1的Gradle 4.1问题
- 使用gradle bootRun启动时,redirect()无法在Grails中解析@info.app.name @
- Rappid(在检查器中实现select2字段,但它不运行条件“when”)
- 适用于appr.tc的原生Android应用