android 編譯錯誤


A problem occurred configuring root project
Could not resolve all artifacts for configuration ':classpath'.
Could not resolve com.baidu.mobstat:mtj-circle-plugin:latest.integration.


看到這個錯誤是不是覺得網絡不行,或者配置文件出問題了,百度只要加個代理就能下載。


我試過一些常用的修補方法,加代理,換版本好,清緩存,都不行。

沒那么簡單,因為android studio喜歡聲東擊西,不能光看上面的錯誤日志。


於是,在細看一下,會發現一個提示 could not get 403,然后你去搜索這個域名就會發現被禁了。

所以很簡單,注釋掉這個域名開頭的引用,嘗試編譯,通過。

 

ExoPlayerImplInternal:Source error.

UnrecognizedInputFormatException:None of the available extractors(MatroskaExtractor,FragmentedMp4Extractor,Mp4Extractor,Mp3Extractor。。。)

視頻Mp4播放失敗,於是看到一個異常。

找了很多,跟換了各種內核,無法解決。

於是我下載了一個demo,發現可以,但是版本差異比較大,沒發對比,於是打算升級一下。

升級后,報新錯,於是開始百度找資料。

Execution failed for task 'App:processDebugManifest'.

Could not get unknown property 'instantRunManifestOutputDirectory' for task 'App:processDebugManifest' of type com.android.build.gradle.tasks.ProcessApplicationManifest.

后來我找到一個哥們的筆記:微小站-筆記-百度統計編譯報錯 (jsc0.com),很顯然異常來自於百度移動統計的沖突。

由於本項目可以棄用這個百度移動統計,我直接把百度統計干掉了,在次運行,又來了一個新的伙伴。

AAPT: error: resource android:attr/lStar not found.

到這里我有點察覺這個升級不簡單了,這種編譯包沖突清單合並類問題最惡心,於是我重新清除緩存,然后把編譯版本換成 4.0.1,wrapper文件換成6.1.1版本。

最后確認是 appcompat 1.4.0版本引起的,因為它引入了高版本的kotlin androidx.core:core 庫,所以導致編譯版本等拉高,不兼容

重新運行,又出現一個新異常。

Compilation failed; see the compiler error output for details.

 

下面白字提示了,還是不兼容,一下午都在改bug,一個接一個,感覺又被AndroidStudio帶吭里了。

后來尋求同事的幫助,同事也跟我一起升級,一樣的錯誤出現,連環bug。

一直到第二天,同事發現了這個關鍵點,就是升級后的視頻庫,引入了appcompat 1.4.0,於是他直接把1.4.0剔除了。

//視頻播放器完整版引入
    api ('com.github.CarGuo.GSYVideoPlayer:gsyVideoPlayer-java:v8.1.8-release-jitpack'){
        exclude group: 'androidx.appcompat'
    }
    //是否需要ExoPlayer模式
    api ('com.github.CarGuo.GSYVideoPlayer:GSYVideoPlayer-exo2:v8.1.8-release-jitpack'){
        exclude group: 'androidx.appcompat'
    }

然后在運行,ok了,但是我這邊還是不行,發現我本地之前查找資料,把所有appcompat升級了,根本原因就是appcompat1.4.0引發的。

我把所有appcompat庫回退1.2.0后,在次運行,通過了。

簡直無語加吐槽,as的報錯機制非常短小無力。

 

最近新拉項目,運行后報錯,as果然又沒讓我失望過。

Execution failed for task ':service:kaptDebugKotlin'.
> A failure occurred while executing org.jetbrains.kotlin.gradle.internal.KaptWithoutKotlincTask$KaptExecutionWorkAction
> java.lang.reflect.InvocationTargetException (no error message)

花里胡哨一堆文章,沒啥用,首先可以確認,項目是沒問題的,因為線上都ok,同事也都在用,那么就肯定是環境問題。

改下jdk版本,改成11。

發現后面一堆花里胡哨的錯誤,如果鑽進去了,就完蛋了,很不幸,我鑽過。

然后就是重新清除一下緩存,在 sync 一下代碼,在次運行,解決。

 

NoBeanDefFoundException: No definition found for class

這個很明顯,沒注入 viewmodel,使用了注入方式別忘記了注入

val settingModule = module {
    viewModel { TestViewModel(get()) }
}

 

Could not track an OkHttp3 request Stream close OkHttp3Interceptor

使用了 AS 的 App Inspection 調試后會出現這個錯,Database Inspector 數據庫分析器或 Profiler 網絡監控器,一直上傳文件失敗,把調試關了就行。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM