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

Android Studio迁移模块后报错:无法访问KotlinBuildScript类

解决模块移动到子文件夹后Kotlin Build Script类路径问题

以下是针对你遇到的Cannot access script base class 'org.gradle.kotlin.dsl.KotlinBuildScript'报错的具体修复步骤:

  • 修正settings.gradle中的模块路径
    模块移动到子文件夹后,必须同步更新settings.gradle里的模块引用路径。比如原来模块直接在根目录下,现在放到sub文件夹,需要修改配置:

    // 旧配置
    include ':moduleA'
    
    // 新配置
    include ':sub:moduleA'
    project(':sub:moduleA').projectDir = file('sub/moduleA')
    

    注意路径要和实际文件夹结构完全匹配,避免拼写错误。

  • 统一Gradle与Kotlin插件版本
    确保模块的build.gradle使用的Kotlin插件版本和根项目一致,且与当前Gradle版本兼容:

    1. 根项目build.gradle中定义统一版本(推荐用ext块):
      ext {
          kotlin_version = '1.9.20'
          gradle_version = '8.4'
      }
      
    2. 模块build.gradle中引用统一版本:
      plugins {
          id 'org.jetbrains.kotlin.jvm' version "$kotlin_version"
          id 'java-library'
      }
      

    不建议在模块中硬编码与根项目不同的插件版本,容易引发依赖冲突。

  • 清理Gradle缓存并强制刷新依赖
    移动模块后可能存在缓存残留,执行以下命令彻底清理:

    # Linux/macOS
    ./gradlew clean build --refresh-dependencies
    
    # Windows
    gradlew clean build --refresh-dependencies
    

    也可以手动删除项目根目录的.gradle文件夹和模块下的build文件夹,再重新同步项目。

  • 检查模块build.gradle的脚本结构
    避免在模块中重复定义buildscript块(除非必须),优先使用Gradle的Plugins DSL。如果确实需要使用buildscript,确保依赖的仓库和插件配置正确:

    buildscript {
        repositories {
            mavenCentral()
        }
        dependencies {
            classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
        }
    }
    
  • 排查文件权限问题(仅Linux/macOS)
    移动文件夹后可能出现权限不足的情况,执行命令修复模块文件夹的权限:

    chmod -R 755 ./sub/moduleA
    

内容的提问来源于stack exchange,提问作者Vladosik

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.25 02:18:21