Proguard - 找不到任何超级类

2024-05-16

我收到此错误:

Unexpected error while performing partial evaluation:
Class       = [org/apache/log4j/chainsaw/Main]
Method      = [<init>()V]
Exception   = [java.lang.IllegalArgumentException] (Can't find any super classes of [org/apache/log4j/chainsaw/LoadXMLAction] (not even immediate super class [javax/swing/AbstractAction]))
Error: Can't find any super classes of [org/apache/log4j/chainsaw/LoadXMLAction] (not even immediate super class [javax/swing/AbstractAction])

我的混淆器配置的一部分:

-dontwarn javax.jms.**
-dontwarn com.sun.jdmk.comm.**
-dontwarn android.support.v4.**
-dontwarn com.google.api.client.googleapis.extensions.**
-dontwarn org.apache.harmony.**
-dontwarn com.sun.**
-dontwarn org.simpleframework.**
-dontwarn com.google.android.gms.**
-dontwarn org.apache.log4j.lf5.viewer.**
-dontwarn java.beans.**
-dontwarn org.apache.log4j.**

-libraryjars 'D:\Workspace\android\libs\acra-4.5.0.jar'
-libraryjars 'D:\Workspace\android\libs\activation.jar'
-libraryjars 'D:\Workspace\android\libs\additionnal.jar'
-libraryjars 'D:\Workspace\android\libs\android-logging-log4j-1.0.3.jar'
-libraryjars 'D:\Workspace\android\libs\android-support-v4.jar'
-libraryjars 'D:\Workspace\android\libs\annotations.jar'
-libraryjars 'D:\Workspace\android\libs\google-api-client-android-1.12.0-beta.jar'
-libraryjars 'D:\Workspace\android\libs\jtar-1.1.jar'
-libraryjars 'D:\Workspace\android\libs\log4j-1.2.15.jar'
-libraryjars 'D:\Workspace\android\libs\mail.jar'
-libraryjars 'D:\Workspace\android\libs\simple-xml-2.6.9.jar'

log4j 的库已经存在,那么问题出在哪里呢?

UPDATE

正如我发现的那样,问题是在优化过程中提出的。 收缩和混淆正在发挥作用。


对于那些需要在 Android 上使用 Log4J 的快速解决方案的人来说,Krivers 的更新实际上是一个提示:设置-dontoptimize在 ProGuard 配置中关闭优化,从而避免错误(尽管这只能被视为一种解决方法)。

事实上,Android Tools Project Site 也有建议关闭ProGuard优化 http://tools.android.com/recent/proguardimprovements:

Dalvik 执行许多自己的优化,并且 ProGuard 执行的一些优化与 Dalvik 不兼容,因此为了避免难以找出的错误(并且因为净性能增益通常很小),默认配置关闭优化。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Proguard - 找不到任何超级类 的相关文章

随机推荐

  • 如何在 Android 应用程序中使用多个 Graph API 获取 Facebook Notes 项目的评论?

    我想使用 Graph API 显示 Facebook 页面的注释项目以及这些评论和点赞 为此 我使用 Facebook SDK 中的 asyncFacebookRunner 步骤是这样的 调用 asyncFacebookRunner req
  • std::list::clear 是否会使 std::list::end 迭代器无效?

    检查这个代码 include stdafx h include
  • 如何在 HandlerInterceptorAdapter 中添加 HttpServletRequest 标头?

    我正在尝试将授权标头添加到我的请求中 作为我们切换环境时的临时解决方法 我试图在扩展 HandlerInterceptorAdapter 的拦截器中处理它 我使用 MutableHttpServletRequest 类制作here http
  • 从 Invoke 方法获取 RETURN

    我正在尝试从另一个线程上的列表框项目中读取值 我尝试创建一种新方法来运行调用命令 我可以设法将命令发送到列表框 例如通过调用方法添加 但我似乎无法得到响应 我似乎无法获取该项目的值 我尝试了几种方法 一旦我将它从空变为字符串 事情就开始变得
  • 如何在 iOS 上固定证书的公钥

    在提高我们正在开发的 iOS 应用程序的安全性时 我们发现需要对服务器的 SSL 证书 全部或部分 进行 PIN 操作以防止中间人攻击 尽管有多种方法可以做到这一点 但当您搜索此内容时 我只找到了固定整个证书的示例 这种做法会带来一个问题
  • 如何将 sql 数据输出到 QCalendarWidget

    我希望能够在日历小部件上突出显示 SQL 数据库中的一天 就像启动程序时突出显示当前日期一样 在我的示例中 它是红色突出显示 我想要发生的是 当用户按下突出显示的日期时 数据库中日期旁边的文本将显示在日历下方的标签上 这是我使用 QT De
  • 在 UITableView 的部分标题文本下方添加一些边距

    我已经设计了标题文本的样式 func tableView tableView UITableView cellForRowAtIndexPath indexPath NSIndexPath gt UITableViewCell let ce
  • cordova插件条码扫描仪打不开扫描

    我的条形码扫描仪插件有问题 我不是天才 我不太了解如何编写网络应用程序 我使用phonegap和cordova 并且尝试制作一个网络应用程序 在单击链接后扫描条形码 我之前已经使用此命令行安装了该插件 cordova plugin add
  • 空手道 - 使用 Javascript 从 元素获取 URL

    使用空手道 我需要从标签 href 中提取 url 我直接在浏览器中使用 Javascript 尝试过 document querySelector a rel noopener href 它在浏览器中工作正常 我收到完整的 url 地址
  • 从对象中取出具有无效(NaN、空白等)值的键的最佳方法?

    我有一个供用户填写的简短搜索表单 将有多个搜索查询进入 MongoDB 该表单创建一个名为的变量searchParams可能看起来像这样 var searchParams city Springfield bedrooms 3 bathro
  • Azure 表存储 - CreateIfNotExistsAsync 上的 501 NotImplemented

    我正在使用我知道可以工作的存储帐户和帐户密钥 信用 我有一个使用完全相同的连接字符串的 blob 容器 可以正常工作 我正在有效地这样做 CloudStorageAccount Parse connectionString CreateCl
  • 无法从资源加载图片

    So I am trying to load a image file from a resource so that when I export my application into a jar file it could be use
  • 运行一个特定的 Laravel 迁移(单个文件)

    我的项目中有 5 次迁移 我只想运行这些迁移之一 是否可以将单个文件的名称传递给php artisan migrate命令 您可以将迁移放入更多文件夹中并运行如下命令 php artisan migrate path app databas
  • 可访问数据的 Java 约定。 (公共访问器和 Getter/命名)

    通过 Java API 您会看到大量冲突的命名和实践 这让我感到非常困惑 例如 The String http grepcode com file repository grepcode com java root jdk openjdk
  • 在从一个表中提取的循环内调用执行以执行宏

    我目前有以下情况 macro sqlloop event id lots of code mostly proc sql segments mend 生成一个输出表 名为export table2 我需要能够为另一个表 名为 vars 中的
  • Pjax动画

    我终于让 pjax 工作了 但我还有另一个问题 如何添加一些 jquery 动画 如淡出 幻灯片旧内容和淡入 幻灯片新内容 默认情况下 pjax 只是更改内容 没有任何好看的效果 任何帮助将非常感激 此致 基本上 你有一堆事件 https
  • 在 Blackberry 4.2 JDE 上调用 atan 函数

    我需要从我的 Blackberry Java 应用程序计算反正切值 不幸的是 blackberry 4 2 api 没有 Math atan 函数 Blackberry JDE 4 6 版有此功能 但 4 2 版没有 有谁知道计算 atan
  • WordPress 网站的团队开发

    我不是 WordPress 开发人员 但我正在尝试确定团队使用 WordPress 的最佳方式 对于 Rails 项目或大多数其他项目来说 在本地工作并在上游部署很容易 但我的理解是 WordPress 并没有让这变得那么容易 也许这是一个
  • bluetoothctl 到 hcitool 等效命令

    在 Linux 中 我曾经使用 hidd connect mmac 来连接 BT 设备 但自 Bluez5 以来 这种情况已经消失了 我可以使用 bluetoothctl 手动建立连接 但我需要从我的应用程序使用这些命令 并且使用 blue
  • Proguard - 找不到任何超级类

    我收到此错误 Unexpected error while performing partial evaluation Class org apache log4j chainsaw Main Method