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

运行react-native run-android时build.gradle出现unexpected token错误

解决React Native react-native run-android 中build.gradle语法错误问题

嘿,我之前也碰到过一模一样的问题!这个unexpected token: (错误本质上是Gradle脚本的语法不兼容问题,大概率是你的android/build.gradle第18行的代码不符合当前Gradle版本的Groovy语法规范,下面是具体的排查和解决步骤:

第一步:定位并检查错误代码

直接打开项目根目录下的android/build.gradle文件,跳到第18行,重点排查以下几种常见错误:

  • 误用了Java风格的Lambda表达式:比如写了() -> {},但Gradle的Groovy语法里闭包应该直接用{}开头
  • 括号/符号不匹配:比如多写了括号、漏了逗号,或者不小心用了全角符号
  • 复制粘贴带来的不可见特殊字符:有时候复制旧配置会带入奇怪的隐藏字符,导致语法解析失败

举个典型的错误示例:

// 错误写法,Gradle无法识别这种无参数Lambda开头的写法
() -> {
    maven { url 'https://jitpack.io' }
}

第二步:修正语法问题

根据你看到的错误代码,针对性调整:

  • 如果是Lambda写法错误,把() -> {}改成Groovy原生的闭包写法{}
  • 检查所有括号、逗号是否匹配,把全角符号替换为半角
  • 若不确定正确写法,可以参考同版本React Native官方模板的build.gradle内容,对比着修改

另外也可以检查Gradle版本兼容性:
打开android/gradle/wrapper/gradle-wrapper.properties,确认distributionUrl对应的Gradle版本是否符合当前React Native版本的要求(比如RN 0.70+需要Gradle 7.3及以上版本)

第三步:清理缓存并重新构建

修改完成后,先清理Gradle缓存避免旧缓存干扰:

cd android && ./gradlew clean

回到项目根目录,重新运行构建命令:

react-native run-android

我当时就是因为复制了一段旧的Gradle配置,误用了Java风格的Lambda写法,改完就正常运行了,你按照这个思路排查应该没问题!

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.25 07:25:03