簡體   English   中英

更新到android gradle插件2.3后,多模塊MultiDex項目不會運行測試

[英]Multi-module MultiDex project won't run tests after update to android gradle plugin 2.3

我有多個模塊的項目,所有模塊都配置為使用multiDexEnabled true構建。 所有這些模塊都有儀表測試包,配置為根據這個SO答案運行啟用MultiDex的JUnit4測試: httpsMultiDex除了其中一個模塊。 其中一個模塊配置為使用testInstrumentationRunner "com.android.test.runner.MultiDexTestRunner" (因此沒有JUnit4測試),因為它依賴於一個不會加載 JUnit4測試運行器的DLL。 (如果有人知道那個解決方案,那太好了!但這不是我在這里報道的問題......)

這個配置一直很好,直到我試圖更新到android gradle插件2.3.0 現在,當我使用JUnit3 MultiDexTestRunner運行模塊測試時,我看到:

Started running tests
Test running failed: Instrumentation run failed due to 'java.lang.ClassNotFoundException'
Empty test suite.

並在控制台中(截斷到有用位):

java.lang.RuntimeException: Unable to instantiate instrumentation ComponentInfo{com.redacted.test/com.android.test.runner.MultiDexTestRunner}: java.lang.ClassNotFoundException: Didn't find class "com.android.test.runner.MultiDexTestRunner" on path: DexPathList[[zip file "/system/framework/android.test.runner.jar", zip file "/data/app/com.redacted.test-1/base.apk", zip file "/data/app/com.redacted.test-1/base.apk"],nativeLibraryDirectories=[/data/app/com.redacted.test-1/lib/arm, /data/app/com.redacted.test-1/lib/arm, /data/app/com.redacted.test-1/base.apk!/lib/armeabi-v7a, /data/app/com.redacted.test-1/base.apk!/lib/armeabi-v7a, /vendor/lib, /system/lib]]
...
Caused by: java.lang.ClassNotFoundException: Didn't find class "com.android.test.runner.MultiDexTestRunner" on path: DexPathList[[zip file "/system/framework/android.test.runner.jar", zip file "/data/app/com.intuit.paymentshub.test-1/base.apk", zip file "/data/app/com.intuit.paymentshub.test-1/base.apk"],nativeLibraryDirectories=[/data/app/com.intuit.paymentshub.test-1/lib/arm, /data/app/com.intuit.paymentshub.test-1/lib/arm, /data/app/com.intuit.paymentshub.test-1/base.apk!/lib/armeabi-v7a, /data/app/com.intuit.paymentshub.test-1/base.apk!/lib/armeabi-v7a, /vendor/lib, /system/lib]]

所以我堅持使用早期的Android Gradle插件,直到我可以解決這個問題(或者DLL問題,盡管我對這個問題的希望不大,因為它從未起作用。)

更新工具后似乎這個問題就消失了。 目前用buildTools 26運行android for gradle 2.3.3並且這個問題消失了。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM