我们使用Microsoft Azure Pipeline为ios和android构建离子应用程序。不幸的是,我们在构建android应用程序时遇到了以下错误。
FAILURE: Build failed with an exception.
* Where:
Build file '/home/vsts/work/1/s/android/capacitor-cordova-android-plugins/build.gradle' line: 21
* What went wrong:
Could not compile build file '/home/vsts/work/1/s/android/capacitor-cordova-android-plugins/build.gradle'.
> startup failed:
build file '/home/vsts/work/1/s/android/capacitor-cordova-android-plugins/build.gradle': 21: unable to resolve class targetSdkVersion
@ line 21, column 26.
targetSdkVersion targetSdkVersion = project.hasProperty('targetSdkVersion') ? rootProject.ext.targetSdkVersion : 29奇怪的是,几天前它还能正常工作,没有任何问题。用于生成APK的命令
sudo npx jetify
sudo ionic capacitor sync android
cd android && gradle wrapper && sudo ./gradlew assembleRelease `//this is where it fails`发布于 2021-07-02 22:13:08
这确实很奇怪。我有同样的问题,没有任何好的解释,但我也有一个可行的解决方案。替换行
targetSdkVersion targetSdkVersion = project.hasProperty('targetSdkVersion') ? rootProject.ext.targetSdkVersion : 29
使用
targetSdkVersion project.hasProperty('targetSdkVersion') ? rootProject.ext.targetSdkVersion : 29
它对我来说比赋值更有意义。
编辑:显然这是正确的修复,最近电容器存储库中的拉取请求做了同样的事情:https://github.com/ionic-team/capacitor/pull/4788或修复https://github.com/ionic-team/capacitor/pull/4788/commits/250fdcf03be6510dd629a91a98b5220e14d31664
https://stackoverflow.com/questions/67922091
复制相似问题