You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Android项目Gradle依赖缺失致导入报错及同步StackOverflowError求助

问题

我的Android项目包含多个Activity,但Gradle中未添加任何依赖。代码里导入了androidx.appcompat.app.AppCompatActivity等类,这些导入出现报错。

导入代码如下:

import androidx.appcompat.app.AppCompatActivity;

import android.annotation.SuppressLint;
import android.content.Intent;
import android.graphics.drawable.AnimationDrawable;
import android.os.Bundle;
import android.view.MotionEvent;
import android.view.View;
import android.widget.LinearLayout;
import android.widget.TextView;
import android.widget.Toast;

import java.util.Random;

项目根目录build.gradle代码:

plugins {
    id 'com.android.application' version '7.2.0' apply false
    id 'com.android.library' version '7.2.0' apply false
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

同步项目时出现错误:

java.lang.StackOverflowError
    at com.android.build.gradle.internal.ide.dependencies.ArtifactUtils.toKey(ArtifactUtils.kt:496)
    at com.android.build.gradle.internal.ide.dependencies.FullDependencyGraphBuilder.handleDependency(FullDependencyGraphBuilder.kt:130)
at com.android.build.gradle.internal.ide.dependencies.FullDependencyGraphBuilder.handleDependency(FullDependencyGraphBuilder.kt:163)

请问需要添加哪些Gradle依赖来解决这些问题?

解决方案

1. 添加AppCompat依赖解决导入报错

你用到的AppCompatActivity属于AndroidX AppCompat库,需要在模块级(通常是app/build.gradle)的dependencies块中添加以下依赖:

dependencies {
    // 核心AppCompat依赖,解决AppCompatActivity的导入问题
    implementation 'androidx.appcompat:appcompat:1.6.1'
    
    // 可选:如果项目用到Material Design组件(如MaterialButton等),可添加此依赖
    // implementation 'com.google.android.material:material:1.9.0'
}

注意:代码中导入的Intent、TextView、Toast等类属于Android SDK核心类,不需要额外添加依赖,只需确保模块级build.gradle中配置了正确的compileSdk和targetSdk版本即可。

2. 解决StackOverflowError同步错误

这个栈溢出错误是Gradle依赖解析时的问题,结合你当前使用的7.2.0版本插件,建议通过以下方式修复:

  • 升级Gradle插件版本:将根目录build.gradle中的插件版本升级到稳定的较新版本,比如7.4.2:
plugins {
    id 'com.android.application' version '7.4.2' apply false
    id 'com.android.library' version '7.4.2' apply false
}
  • 同步Gradle Wrapper版本:确保gradle/wrapper/gradle-wrapper.properties中的distributionUrl与插件版本匹配,比如7.4.2插件对应Gradle 7.5版本:
distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-bin.zip

完成修改后,点击Sync Now重新同步项目即可。

内容的提问来源于stack exchange,提问作者I don't think so

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 13:39:36