【问题标题】:ProGuard Cannot Find Referenced LibrariesProGuard 找不到引用的库
【发布时间】:2014-09-06 02:01:47
【问题描述】:
[2014-07-15 23:57:43 - MozMeet] Proguard returned with error code 1. See console
[2014-07-15 23:57:43 - MozMeet] Note: there were 662 duplicate class definitions.
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider$1: can't find superclass or interface com.facebook.android.Facebook$ServiceListener
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider$2: can't find superclass or interface com.facebook.Session$StatusCallback
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider$2$1: can't find superclass or interface com.facebook.Request$Callback
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider: can't find referenced class com.facebook.android.Facebook
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider: can't find referenced class com.facebook.android.Facebook
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider: can't find referenced class com.facebook.android.Facebook
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider: can't find referenced class com.facebook.Session$Builder
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider: can't find referenced class com.facebook.Session$Builder
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider: can't find referenced class com.facebook.Session$Builder
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider: can't find referenced class com.facebook.SharedPreferencesTokenCachingStrategy
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider: can't find referenced class com.facebook.SharedPreferencesTokenCachingStrategy
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider: can't find referenced class com.facebook.Session$Builder
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider: can't find referenced class com.facebook.Session$Builder
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider: can't find referenced class com.facebook.Session$OpenRequest
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider: can't find referenced class com.facebook.Session$OpenRequest
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider: can't find referenced class com.facebook.Session$OpenRequest
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider: can't find referenced class com.facebook.Session$OpenRequest
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider: can't find referenced class com.facebook.Session$OpenRequest
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider: can't find referenced class com.facebook.Session$OpenRequest
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider: can't find referenced class com.facebook.Session
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider: can't find referenced class com.facebook.Session
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider: can't find referenced class com.facebook.Session
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider: can't find referenced class com.facebook.Session
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider: can't find referenced class com.facebook.android.Facebook
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider: can't find referenced class com.facebook.android.Facebook
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider: can't find referenced class com.facebook.TokenCachingStrategy
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider: can't find referenced class com.facebook.TokenCachingStrategy
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider: can't find referenced class com.facebook.TokenCachingStrategy
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider: can't find referenced class com.facebook.TokenCachingStrategy
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider: can't find referenced class com.facebook.Session
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider: can't find referenced class com.facebook.SessionState
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider: can't find referenced class com.facebook.Session
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider: can't find referenced class com.facebook.Session
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider: can't find referenced class com.facebook.TokenCachingStrategy
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider: can't find referenced class com.facebook.SessionState
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider: can't find referenced class com.facebook.android.Facebook$ServiceListener
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider: can't find referenced class com.facebook.Session$StatusCallback
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider: can't find referenced class com.facebook.android.Facebook
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider: can't find referenced class com.facebook.Session
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider: can't find referenced class com.facebook.SessionDefaultAudience
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider: can't find referenced class com.facebook.Session$OpenRequest
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider: can't find referenced class com.facebook.android.Facebook
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider: can't find referenced class com.facebook.Session
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider: can't find referenced class com.facebook.TokenCachingStrategy
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider: can't find referenced class com.facebook.Session
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider$1: can't find referenced class com.facebook.android.Facebook$ServiceListener
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider$1: can't find referenced class com.facebook.android.Facebook
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider$1: can't find referenced class com.facebook.android.FacebookError
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider$1: can't find referenced class com.facebook.android.FacebookError
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider$2: can't find referenced class com.facebook.SessionState
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider$2: can't find referenced class com.facebook.SessionState
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider$2: can't find referenced class com.facebook.Request
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider$2: can't find referenced class com.facebook.Request
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider$2: can't find referenced class com.facebook.Request
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider$2: can't find referenced class com.facebook.Session$StatusCallback
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider$2: can't find referenced class com.facebook.SessionState
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider$2: can't find referenced class com.facebook.Request
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider$2: can't find referenced class com.facebook.Session
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider$2: can't find referenced class com.facebook.Request$Callback
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider$2: can't find referenced class com.facebook.Session
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider$2: can't find referenced class com.facebook.SessionState
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider$2: can't find referenced class com.facebook.Request
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider$2: can't find referenced class com.facebook.Session
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider$2: can't find referenced class com.facebook.SessionState
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider$2$1: can't find referenced class com.facebook.Response
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider$2$1: can't find referenced class com.facebook.FacebookRequestError
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider$2$1: can't find referenced class com.facebook.Response
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider$2$1: can't find referenced class com.facebook.model.GraphObject
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider$2$1: can't find referenced class com.facebook.Request$Callback
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider$2$1: can't find referenced class com.facebook.Response
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider$2$1: can't find referenced class com.facebook.FacebookRequestError
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider$2$1: can't find referenced class com.facebook.model.GraphObject
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider$2$1: can't find referenced class com.facebook.Request
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider$2$1: can't find referenced class com.facebook.Response
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.FacebookAuthenticationProvider$2$1: can't find referenced class com.facebook.Response
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.ParseFacebookUtils: can't find referenced class com.facebook.Session
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.ParseFacebookUtils: can't find referenced class com.facebook.Session
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.ParseFacebookUtils: can't find referenced class com.facebook.android.Facebook
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.ParseFacebookUtils: can't find referenced class com.facebook.Session
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.ParseFacebookUtils: can't find referenced class com.facebook.android.Facebook
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.ParseFacebookUtils: can't find referenced class com.facebook.android.Facebook
[2014-07-15 23:57:43 - MozMeet] Warning: com.parse.ParseFacebookUtils: can't find referenced class com.facebook.Session
[2014-07-15 23:57:43 - MozMeet] Warning: com.squareup.picasso.OkHttpDownloader: can't find referenced class com.squareup.okhttp.OkHttpClient
[2014-07-15 23:57:43 - MozMeet] Warning: com.squareup.picasso.OkHttpDownloader: can't find referenced class com.squareup.okhttp.OkHttpClient
[2014-07-15 23:57:43 - MozMeet] Warning: com.squareup.picasso.OkHttpDownloader: can't find referenced class com.squareup.okhttp.OkUrlFactory
[2014-07-15 23:57:43 - MozMeet] Warning: com.squareup.picasso.OkHttpDownloader: can't find referenced class com.squareup.okhttp.Cache
[2014-07-15 23:57:43 - MozMeet] Warning: com.squareup.picasso.OkHttpDownloader: can't find referenced class com.squareup.okhttp.Cache
[2014-07-15 23:57:43 - MozMeet] Warning: com.squareup.picasso.OkHttpDownloader: can't find referenced class com.squareup.okhttp.OkHttpClient
[2014-07-15 23:57:43 - MozMeet] Warning: com.squareup.picasso.OkHttpDownloader: can't find referenced class com.squareup.okhttp.OkUrlFactory
[2014-07-15 23:57:43 - MozMeet] Warning: com.squareup.picasso.OkHttpDownloader: can't find referenced class com.squareup.okhttp.OkUrlFactory
[2014-07-15 23:57:43 - MozMeet] Warning: com.squareup.picasso.OkHttpDownloader: can't find referenced class com.squareup.okhttp.OkUrlFactory
[2014-07-15 23:57:43 - MozMeet] Warning: com.squareup.picasso.OkHttpDownloader: can't find referenced class com.squareup.okhttp.OkUrlFactory
[2014-07-15 23:57:43 - MozMeet] Warning: com.squareup.picasso.OkHttpDownloader: can't find referenced class com.squareup.okhttp.OkHttpClient
[2014-07-15 23:57:43 - MozMeet] Warning: com.squareup.picasso.OkHttpDownloader: can't find referenced class com.squareup.okhttp.OkHttpClient
[2014-07-15 23:57:43 - MozMeet] Warning: com.squareup.picasso.OkHttpDownloader: can't find referenced class com.squareup.okhttp.OkHttpClient
[2014-07-15 23:57:43 - MozMeet]       You should check if you need to specify additional program jars.
[2014-07-15 23:57:43 - MozMeet] Warning: there were 95 unresolved references to classes or interfaces.
[2014-07-15 23:57:43 - MozMeet]          You may need to specify additional library jars (using '-libraryjars').
[2014-07-15 23:57:43 - MozMeet] Error: Please correct the above warnings first.  

这是我在启用ProGuard 的情况下尝试导出我的Android 应用程序时遇到的错误列表。一点点谷歌搜索,我发现我需要将 jar 文件添加到proguard-project.txt。到目前为止,我添加的内容如下所示(但无济于事):

-keepattributes SourceFile,LineNumberTable
-keep class com.parse.*{ *; }
-libraryjars \libs\Parse-1.5.1.jar
-keepclasseswithmembernames class * {
    native <methods>;
}  

我还有另外 3 个库以及 Parse,即 Crashlytics、Picasso 和 V4 Support。

【问题讨论】:

    标签: android facebook parse-platform proguard


    【解决方案1】:

    proguard-project.txt 文件进行了一些更改(如果您的项目中有多个模块 - 将其放入调用您收到警告的 *.jar 文件的模块中):

    -keepattributes SourceFile,LineNumberTable
    -keep class com.parse.*{ *; }
    -dontwarn com.parse.**
    -dontwarn com.squareup.picasso.**
    -keepclasseswithmembernames class * {
        native <methods>;
    }  
    

    需要-dontwarn 行。基本上他们告诉ProGuard 的是,这些 jar 可以自己正常工作,所以当你找不到它们引用的类时不要抱怨。

    【讨论】:

    • -dontwarn 选项确实告诉 ProGuard 禁止警告并继续。您不应将-libraryjars 添加到您的配置中。 Android 构建过程(Ant、Eclipse、Gradle)已经为您指定了这些选项。
    • 在我使用 picasso 构建 apk 的情况下,-dontwarn com.squareup.picasso.** 需要 proguard.flags
    • 在我的情况下,问题恰恰在于使用常见的 proguard-project.txt 而不是项目内的 proguard-rules.pro oneA.ndroid Studio 检查您的简单错误。例如。我在 '- ' 和 keep 之间或者在点和星号之间放了一个空格。
    猜你喜欢
    • 2012-09-16
    • 2014-06-23
    • 1970-01-01
    • 2012-09-28
    • 2012-10-13
    • 2011-10-21
    • 2013-09-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多