Ionic构建报错:无法确定:app:compileDebugJavaWithJavac任务依赖
Ionic Cordova Android构建失败:无法解析Firebase/GMS依赖项
环境版本
- node: v10.24.1
- npm: 6.14.12
- java: Corretto-8.392.08.1
- Gradle: 8.5
- cordova@10.0.0
- ionic@5.4.16
执行命令
npx ionic cordova platform remove android npx ionic cordova platform add android npx ionic cordova build --debug android
报错信息
FAILURE:构建过程中出现异常。 * 问题原因: 无法确定任务':app:compileDebugJavaWithJavac'的依赖项。 > 无法解析配置':app:debugCompileClasspath'的所有任务依赖。 > 找不到com.google.firebase:firebase-measurement-connector:11.0.4。 被以下项目依赖: project :app > com.google.firebase:firebase-messaging:19.0.0 > 找不到com.google.android.gms:play-services-stats:11.0.4。 被以下项目依赖: project :app > com.google.firebase:firebase-iid:19.0.0 > 找不到com.google.firebase:firebase-iid-interop:11.0.4。 被以下项目依赖: project :app > com.google.firebase:firebase-iid:19.0.0 * 建议尝试: 使用--stacktrace选项获取堆栈跟踪。使用--info或--debug选项获取更多日志输出。使用--scan选项获取完整分析信息。 * 获取更多帮助:https://help.gradle.org BUILD FAILED in 7s Command failed with exit code 1: /home/lucas/projects/my-app/platforms/android/gradlew cdvBuildDebug -b /home/lucas/projects/my-app/platforms/android/build.gradle Error: Command failed with exit code 1: /home/lucas/projects/my-app/platforms/android/gradlew cdvBuildDebug -b /home/lucas/projects/my-app/platforms/android/build.gradle at makeError (/home/lucas/projects/my-app/platforms/android/cordova/node_modules/execa/lib/error.js:59:11) at handlePromise (/home/lucas/projects/my-app/platforms/android/cordova/node_modules/execa/index.js:114:26) at process._tickCallback (internal/process/next_tick.js:68:7) [ERROR] 运行子进程cordova时发生错误。 cordova build android --debug --verbose以退出码1结束。 使用--verbose标志重新运行此命令可能会提供更多信息。 ionic:utils-process onBeforeExit handler: 'process.exit' received +0ms ionic:utils-process onBeforeExit handler: running 2 functions +1ms ionic:utils-process processExit: exiting (exit code: 1) +39ms
解决方法
1. 强制统一Firebase/GMS依赖版本
报错中的11.0.4版本依赖已被Google废弃,需通过项目根目录的build.gradle文件强制升级兼容版本:
buildscript { repositories { google() mavenCentral() } dependencies { classpath 'com.google.gms:google-services:4.3.15' } } allprojects { repositories { google() mavenCentral() } } subprojects { project.configurations.all { resolutionStrategy.eachDependency { details -> if (details.requested.group == 'com.google.firebase') { details.useVersion '21.0.0' } if (details.requested.group == 'com.google.android.gms') { details.useVersion '21.0.0' } } } }
2. 更新Firebase相关Cordova插件
旧版本插件依赖废弃库,执行以下命令更新:
cordova plugin remove cordova-plugin-firebase-messaging cordova plugin add cordova-plugin-firebase-messaging@7.0.5
3. 清理缓存并重新构建
npx ionic cordova platform remove android npm cache clean --force rm -rf ~/.gradle/caches npx ionic cordova platform add android npx ionic cordova build --debug android
4. 调整Gradle版本兼容性
Gradle 8.5与当前Ionic/Cordova版本兼容性较差,修改platforms/android/gradle/wrapper/gradle-wrapper.properties:
distributionUrl=https\://services.gradle.org/distributions/gradle-7.6.3-all.zip
内容的提问来源于stack exchange,提问作者Lucas Nascimento
相关产品推荐
相关产品推荐

