Android Studio Giraffe中出现Unresolved reference: VERSION_11错误导致应用无法运行
嗨,我来帮你搞定这个问题!你遇到的Unresolved reference: VERSION_11错误,大概率是在build.gradle.kts里配置版本时的写法出了问题,结合你提到的Java版本更新尝试,我整理了几个最可能的解决方向:
检查Java版本配置的写法
如果你是想把项目的编译Java版本设置为11,那在build.gradle.kts里必须完整引用JavaVersion枚举类的成员,不能只写VERSION_11。正确的配置应该是这样的:android { compileOptions { sourceCompatibility = JavaVersion.VERSION_11 targetCompatibility = JavaVersion.VERSION_11 } // 如果你用的是Kotlin项目,还要加上Kotlin的JVM目标配置 kotlinOptions { jvmTarget = "11" } }之前直接写
VERSION_11会导致gradle找不到这个引用,因为它是JavaVersion类下的常量,必须带前缀调用。如果是配置Android API级别
要是你本来是想设置Android的API级别为11(比如针对旧设备),那直接写数值就好,不要用VERSION_11这个写法,因为在gradle配置文件里默认没有这个常量的定义。示例如下:android { compileSdk = 11 // 也可以换成你实际需要的更高版本,比如33、34 defaultConfig { targetSdk = 11 } }同步并清理项目
改完配置后,记得点击Android Studio右上角的「Sync Project with Gradle Files」按钮同步gradle配置。之后可以执行Build > Clean Project和Build > Rebuild Project,清空旧的编译缓存,避免残留的旧配置影响编译。确认Java版本安装正确
你说已经更新了Java版本,可以再检查下Android Studio使用的JDK是否正确:打开File > Project Structure > SDK Location,查看「JDK location」是否指向Java 11的安装目录(Android Studio Giraffe自带了嵌入式JDK,也可以选择使用这个,避免版本不兼容问题)。
如果以上方法都试过还是不行,你可以把build.gradle.kts里第36行附近的代码贴出来,这样能更精准地定位问题~
备注:内容来源于stack exchange,提问作者Julius Mwangi

