Unity构建Android项目时Gradle语法错误:build.gradle含意外输入'{'
Unity 2022.3.8f1 Android Gradle构建失败问题解决
错误根源分析
Gradle报错指向build.gradle第7行的android {语法错误,实际是**defaultConfig块中的versionName字符串未正确闭合**:
versionName 'v0.2-115-g494f40183的单引号被换行拆分,导致字符串未闭合,破坏了整个脚本的语法结构,进而引发后续代码解析错误。- 脚本中存在HTML转义的
",需替换为正常双引号";dependencies块的闭合括号缩进不规范(虽不影响语法,但建议统一格式)。
修正后的完整build.gradle代码
apply plugin: 'com.android.application' dependencies { implementation project(':unityLibrary') } android { ndkPath "C:/Program Files/Unity/Hub/Editor/2022.3.8f1/Editor/Data/PlaybackEngines/AndroidPlayer/NDK" compileSdkVersion 34 buildToolsVersion '32.0.0' compileOptions { sourceCompatibility JavaVersion.VERSION_11 targetCompatibility JavaVersion.VERSION_11 } defaultConfig { minSdkVersion 22 targetSdkVersion 34 applicationId 'com.company.project' ndk { abiFilters 'armeabi-v7a' } versionCode 1 versionName 'v0.2-115-g494f40183' } aaptOptions { noCompress = ['.unity3d', '.ress', '.resource', '.obb', '.bundle', '.unityexp'] + unityStreamingAssets.tokenize(', ') ignoreAssetsPattern = "!.svn:!.git:!.ds_store:!*.scc:!CVS:!thumbs.db:!picasa.ini:!*~" } lintOptions { abortOnError false } buildTypes { debug { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt') signingConfig signingConfigs.debug jniDebuggable true } release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt') signingConfig signingConfigs.debug } } packagingOptions { doNotStrip '*/armeabi-v7a/*.so' } bundle { language { enableSplit = false } density { enableSplit = false } abi { enableSplit = true } } }
关键修正点
- 将
versionName的字符串合并为一行,确保单引号正确闭合:versionName 'v0.2-115-g494f40183' - 把所有
"替换为正常双引号" - 调整
dependencies块的闭合括号缩进,保持代码格式统一
内容的提问来源于stack exchange,提问作者DreamShake13
相关产品推荐
相关产品推荐

