我们使用 Microsoft Azure Pipelines 为 ios 和 android 构建 Ionic 应用程序。不幸的是,我们在构建 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`
最佳答案
确实很奇怪。我有同样的问题,没有任何好的解释,但我也有一个可行的解决方案。更换线路
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
关于android - 无法解析类 targetSdkVersion,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67922091/