簡體   English   中英

NoClassDefFoundError無法解析基本模塊中的數據綁定類

[英]NoClassDefFoundError failed resolution of databinding class in base module

我剛剛重組了項目以支持即時應用程序,將項目分為3個不同的模塊。 我已經成功部署了Instant App,但經過幾次測試,我發現使用數據出價的一項活動發生了崩潰。

我知道DataBinding僅在基本Feature中受支持,因此我有引用它的類和基本模塊中的布局。 我還添加了ProGuard規則來保留數據綁定類。

這是崩潰的堆棧跟蹤:

    FATAL EXCEPTION: main Process: 
        com.yopapp.yop, PID: 5516 java.lang.NoClassDefFoundError: Failed resolution of: 
Lcom/yopapp/yop/databinding/CardViewItemHeaderBinding;
    at com.yopapp.yop.a.j.a(DealDetailAdapter.java:258)
    at com.yopapp.yop.a.j.onCreateViewHolder(DealDetailAdapter.java:51)
    at android.support.v7.widget.RecyclerView$Adapter.createViewHolder(RecyclerView.java:6493)
    at android.support.v7.widget.RecyclerView$Recycler.a(RecyclerView.java:5680)

Proguard規則:

-dontwarn android.databinding.**
-keep class android.databinding.** { *; }

-dontwarn com.yopapp.yop.databinding.**
-keep class com.yopapp.yop.databinding.** { *; }

另外,如果我分析APK,則可以看到com.yopapp.yop.databinding包和CardViewItemHeaderBinding類(但使用斜體字體,我不知道為什么)

截圖

我有什么想念的嗎?

我發現如果您在庫中的AndroidManifest.xml中使用與您的應用相同的程序包名稱,則數據綁定類會發生java.lang.NoClassDefFoundError。 嘗試為庫模塊使用其他軟件包名稱。

暫無
暫無

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

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