[英]Error: Execution failed for task ':app: lintVitalRelease' any one can solve it?
為什么我得到這個錯誤我嘗試清理和重建應用程序並使應用程序發布為真,我得到同樣的錯誤
錯誤:任務“:app:lintVitalRelease”執行失敗。 java.lang.IllegalStateException:應為 BEGIN_ARRAY,但在第 1 行第 1 列路徑 $
apply plugin: 'com.android.application'
android {
compileSdkVersion 25
buildToolsVersion '26.0.2'
useLibrary 'org.apache.http.legacy'
defaultConfig {
applicationId "x.x.x"
minSdkVersion 15
targetSdkVersion 25
versionCode 95
versionName '5'
multiDexEnabled true
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
productFlavors {
}
}
基於這篇文章
編輯:我刪除了鏈接,因為線程不再存在
您需要做的是將此代碼塊添加到您的 build.gradle 文件中的 android{} 部分
lintOptions {
checkReleaseBuilds false
}
所以像這樣
android {
...
lintOptions {
checkReleaseBuilds false
}
}
更新:
這是另一篇談論類似問題的帖子。 似乎有多種原因會發生此錯誤。 雖然禁用 checkReleaseBuilds 將起作用。 建議找出問題所在並解決。 最常見的錯誤似乎是strings.xml
文件中缺少翻譯。
我建議查看這篇文章以獲得更多幫助
錯誤報告保存到[app module]/build/reports/lint-results-yourBuildName-fatal.html
。 您可以在瀏覽器中打開此文件以了解錯誤。
來源: https ://stackoverflow.com/a/50239165/365229
lintOptions {
checkReleaseBuilds false
abortOnError false
}
打開你的 build.gradle 文件並在 android 下添加以下代碼:
android {
lintOptions {
checkReleaseBuilds false
}
簡單而有效
解決方案 1
android {
lintOptions {
checkReleaseBuilds false
// Or, if you prefer, you can continue to check for errors in release builds,
// but continue the build even when errors are found:
abortOnError false
}
}
解決方案 2
android {
lintOptions {
checkReleaseBuilds false
abortOnError false
}
}
解決方案 3
android {
lintOptions {
disable 'MissingTranslation'
abortOnError false
}
}
注意:有兩種類型使用選項->
1
lintOptions {
//TODO
}
2
android {
lintOptions {
// TODO
}
}
謝謝你
File > Invalidate Caches/Restart... 為我工作。
在我看來,不要使用“checkReleaseBuilds false”。 這破壞了我的整個發布版本,我只看到了一個白屏。
當前的解決方法正在運行:
flutter run --profile
flutter run --debug
flutter run --release
目前,這是唯一對我有用的東西。 這里有一個未解決的問題: https ://issuetracker.google.com/issues/158753935
確保在 build.gradle android{} 部分的 buildscript 和 allprojects 中都有jcenter()
我也遇到了一個錯誤,比如
> Failed to transform '/Users/michaelbui/Projects/counter/build/app/intermediates/flutter/debug/libs.jar' using Jetifier. Reason: FileNotFoundException, message: /Users/michaelbui/Projects/counter/build/app/intermediates/flutter/debug/libs.jar (No such file or directory). (Run with --stacktrace for more details.)
在最新更新后構建應用程序時,但后來我禁用了 android/app/build.gradle 中的 lint 任務
lintOptions {
disable 'InvalidPackage'
checkReleaseBuilds false
}
這對我有用。
在我的情況下,清單中有一些拼寫錯誤導致錯誤,只是更正它們並編譯
就我而言,它正在發生,因為我使用無效(不存在)的 id 來約束視圖,並且當我嘗試創建構建時,它給了我錯誤。 你可以做的是執行任務,
./gradlew assembleRelease --stacktrace
這將為您提供以下選項,
要繼續,請修復 lint 確定的問題,或修改構建腳本,如下所示:
...
android {
lintOptions {
checkReleaseBuilds false
// Or, if you prefer, you can continue to check for errors in release builds,
// but continue the build even when errors are found:
abortOnError false
}
}
如果你選擇,
checkReleaseBuilds false
它不會檢查發布版本中的錯誤並創建一個版本,
如果你選擇,
abortOnError false
它將創建一個構建,並列出錯誤。
這樣,您實際上可以糾正錯誤。
我有一些丟失的 jars 並且在公司防火牆后面,並且試圖在lintVitalRelease
期間下載它們。 我從 VPN 斷開連接,重新運行,它下載了丟失的 jar 並全部恢復正常。
我知道它必須是這樣的,因為其他答案提到了生成錯誤報告的位置,但我沒有在那里生成任何東西,所以它被卡在了我的某個地方。
如果您已經在 Google 上嘗試了所有方法,但仍然無法構建該版本。 你可以按照我的方法:
首先,如果 Android Studio 錯誤日志包含短語“debug/libs.jar”,那么您需要構建 --debug 然后 --release:
flutter build apk --debug
flutter build apk --release
如果出現“profile/libs.jar”怎么辦,構建--profile然后--release:
flutter build apk --profile
flutter build apk --release
如果在構建調試或配置文件時出現錯誤,那么您會繼續在 Google 上找到該錯誤並修復它。 就我而言,我不得不刪除permission_handler
庫,因為它導致了錯誤。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.