当前位置: 首页 > 面试题库 >

android Dx警告:忽略匿名内部类jar文件问题的InnerClasses属性

武向文
2023-03-14
问题内容

我已经使用 lcrypto-j2me-144.jar
jar文件加密了我的应用程序中的用户名和密码,它运行良好,但是当我查看控制台时,它给了我,基本上是j2me jar文件,请指导我摆脱它这个问题。

Dx warning: Ignoring InnerClasses attribute for an anonymous inner class
(org.bouncycastle.asn1.ASN1Sequence$1) that doesn't come with an
associated EnclosingMethod attribute. This class was probably produced by a
compiler that did not target the modern .class file format. The recommended
solution is to recompile the class from source, using an up-to-date compiler
and without specifying any "-target" type options. The consequence of ignoring
this warning is that reflective operations on this class will incorrectly
indicate that it is *not* an inner class.

问题答案:

只是,在针对Java 1.7进行编译并且库已经通过proguard进行编译时,也会发生这种情况,添加此代码可以解决编译库时的问题:

-keepattributes EnclosingMethod



 类似资料:
  • 错误日志: com.android.build.api.transform.transformException:com.android.ide.common.Process.processException:java.util.concurrent.executionException:com.android.ide.common.Process.processException:org.gra

  • 问题内容: 除了使用反射来访问匿名内部类的成员之外,还有其他方法吗? 问题答案: 匿名内部类具有类型,但没有名称。 您可以访问未由命名超类型定义的字段。但是,一旦分配给命名类型变量,该接口就会丢失。 显然,您可以从内部类本身内部访问字段。添加代码的一种方法是通过实例初始化程序: 匿名内部类表达式返回的值具有匿名类型,因此您有机会在类本身之外使用它: 您也可以通过声明类似于以下内容的方法传递它:

  • 问题内容: 请看下面的代码: 在上面的代码中,在方法ModifyList()中声明的匿名内部类的实例能够访问传递给该方法的参数。AFAIK Java为内部类创建一个单独的字节码文件。 谁能解释一下Java在字节码级别上如何处理这些局部变量绑定?我的意思是,Java如何精确跟踪对作为参数传递给该方法的对象的引用? 任何帮助将不胜感激! [抱歉我的英语不好! 如果您理解我的问题,请编辑这篇文章,并删除

  • 忽略编译器警告 格式 #pragma clang push #pragma clang diagnostic ignored "错误类型" // 存在警告的代码 #pragma clang pop > 1.在需要忽略的警告处右键 -- Reveal in Log 2.会给出警告的详细信息,其中包括警告的类型 3.高亮选中的便是这个警告的类型 4.在警告代码处增加如下代码 Command

  • 在以下片段中: 有没有办法从内部匿名类引用匿名类的外部实例? 第二个错误是在解决方案上,我在这里找到了一个匿名内部类的外部类的关键字。这些问题似乎共享一些概念和问题空间,但性质不同。

  • 问题内容: 我正在编写C#Wicket实现,以加深对C#和Wicket的理解。我们遇到的问题之一是Wicket大量使用匿名内部类,而C#没有匿名内部类。 因此,例如,在Wicket中,您可以这样定义一个链接: 由于Link是一个抽象类,因此它强制实现者实现onClick方法。 但是,在C#中,由于没有匿名内部类,因此无法做到这一点。另外,您可以使用如下事件: 当然,这样做有两个缺点。首先,可以有多