2017-01-16 9 views
0

とAndroid上で失敗しました:ProGuardのビルドは、私がOpenCSV 3.8への依存性を持っており、ビルドはProGuardのエラーで失敗リリースOpenCSV依存

Warning:org.apache.commons.beanutils.MappedPropertyDescriptor: can't find referenced method 'void setName(java.lang.String)' in program class org.apache.commons.beanutils.MappedPropertyDescriptor

私はそれを無視しようとすることができますが、それは良い修正が鳴りません。ローカル1.9.2をインストールしている間OpenCSV 3.8コモンズ-々BeanUtils 1.9.3に依存すること

興味深いです。あなたのprogaurdファイルにapache commsためのルールの下に追加する必要が

+0

あなたの質問は何ですか? – Peter4499

+0

@ Peter4499ビルドエラーを無視せずに修正する方法。 – 4ybaka

+0

@ 4ybaka回避策はありますか? – Dharmendra

答えて

0

-keep class org.apache.commons.** { *; } 

Progaurdはルールの上に使用しますので、あなたがそれを使用することができ、パッケージorg.apache.commonsに含まれるクラスを難読化していません。

ありがとうございました。

+1

私のために働いていません。同じエラーでビルドが失敗します。 – 4ybaka

0

私はopenCSVと同様の問題を持っていた:3.9、それはデバッグビルドで、いくつかの警告が表示され、ProGuardのでビルドしながら、それがエラーを投げていました。 ProGuardのファイルで行

configurations { 
    all*.exclude group: 'commons-logging', module: 'commons-logging' 
} 

の下に追加し、私は変化の下に行われ、今私はモジュールレベルのbuild.gradleでAPK

を構築することができています。この問題を解決するには

-dontwarn com.opencsv.** 
-dontwarn org.apache.commons.beanutils.** 
-dontwarn org.apache.commons.collections.** 
-keepattributes *Annotation*,Signature,InnerClasses,EnclosingMethod 
-dontoptimize 

これはあなたと同様の問題に直面している他の人に役立つことを願っています。

関連する問題