java.lang.SecurityException: Can't make field constructor accessible

原本使用GsonConvertor,在Android版本5.1.1上没有任何问题,结果切换到版本6.0.1上,出现以下所示问题:

  1. java.lang.IllegalArgumentException: Unable to create converter for java.util.List<model>

,StackOverFlow有个帖子谈这个问题http://stackoverflow.com/questions/34315499/unable-to-create-converter-for-Java-util-list-retrofit-2-0-0-beta2 。但是我本身的代码就如答案,所以那个答案没用,看了看Retrofit文档,把Convertor的库由Gson改为Jackson,解决了这个问题,但是JackSon有缺憾,它对JSON对象的接口字段定义要求比较严格,如果Json里面有对象没定义的字段就会Error,这非常限制接口的版本升级,没有办法倒回来继续解决Gson的问题。Gson的问题往下看,根本错误原因是:

  1. java.lang.SecurityException: Can‘t make field constructor accessible

原来这是一个Android M Preview版的问题,Gson官方也已经承认,加上我还用了ActiveAndroid,解决办法:

    1. GsonBuilder builder = new GsonBuilder();
    2. builder.excludeFieldsWithModifiers(Modifier.FINAL, Modifier.TRANSIENT, Modifier.STATIC);
    3. Gson gson = builder.create();
    4. retrofit = new Retrofit.Builder()
    5. .baseUrl(baseURL)
    6. .addConverterFactory(GsonConverterFactory.create(gson))
    7. .client(client)
    8. .build();

java.lang.SecurityException: Can't make field constructor accessible

时间: 2024-10-14 09:32:05

java.lang.SecurityException: Can't make field constructor accessible的相关文章

webloigc 使用 spring-loaded 报错,java.lang.SecurityException: 无法定位登录配置

spring-loaded是spring的一个开源项目,用于解决热部署的问题,类似于jrebel,但是jrebel是需要付费的,而spring-loaded则不需要,背景就先说到这,现在回归正传.今天按照官方指导文档,在weblogic的启动脚本(starWeblogic.bat)的SAVE_JAVA_OPTIONS中增加如下配置: -javaagent:D:\devtools\spring_loaded\springloaded-1.2.0.RELEASE.jar -noverify 天下无免

java.lang.SecurityException: JCE cannot authenticate the provider BC

和X公司对接数据,他们的开发语言是java,我们是php,双方数据通信的时候采用的加密方法是:bouncycastle 由于这个时间大神的限制,我们暂时不用PHP开发自己的加密算法,而是采用对方已有的加密包. 具体思路是: 1.将java写的的加密方法封装成jar包: 2.然后在php里面直接调用:exec("java -jar encrypt.jar")系统命令执行,实现加密解密 这里主要遇到2个问题: 1.cannot load mian class 2.调试过程中报错:java.

Android 开发之错误整理java.lang.SecurityException: Requires READ_PHONE_STATE: Neither user 10088 nor current process has android.permission.READ_PHONE_STATE.

java.lang.SecurityException: Requires READ_PHONE_STATE: Neither user 10088 nor current process has android.permission.READ_PHONE_STATE. 今天写了一款发短信的软件,拿了个酷派5879,试了下,结果不能用,把try{}catch{}去掉了,报这个错误, android.permission.READ_PHONE_STATE.没有READ_PHONE_STATE权限,

java.lang.SecurityException: Permission Denial: opening provider

在测试调用外部提供的ContentProvider时候报一下错误: java.lang.SecurityException: Permission Denial: opening provider com.example.onehw.BookProvider from ProcessRecord{b2f1b230 8449:com.example.adtest/u0a53} (pid=8449, uid=10053) that is not exported from uid 10052 at

Maven 3.3.3 with JDK1.7, java.lang.SecurityException

maven 3.3.3 with JDK1.7_79遇到java.lang.SecurityException问题 今天在另一台机器上安装了maven 3.3.3以及jdk1.7_79.在配置maven的时候,需要用到命令来生成password的加密code.如下: mvn -emp HelloWorld mvn -ep xxxxxxxxxx 但是,在windows command line下执行第一条命令时遇到如下错误: Caused by: java.lang.SecurityExcepti

AIDL 发生异常的原因 Android java.lang.SecurityException: Binder invocation to an incorrect interface

我建立了两个project.一个是activity 的 ,一个是service 的. 在进行两个project通信时,应该有以下几点注意: 1.在activity project中引入service project中aidl文件.注意引入后的aidl文件包名应该和service中aidl文件包名保持一致. 2.service project中manifest文件中,service 注册时要声明 android:process=":remote" action应该是aidl中接口的包名.

java.lang.IllegalAccessError: tried to access field org.slf4j.impl.StaticLoggerBinder.SINGLETON from class org.slf4j.LoggerFactory

java.lang.IllegalAccessError: tried to access field org.slf4j.impl.Static.. java.lang.IllegalAccessError: tried to access field org.slf4j.impl.StaticLoggerBinder.SINGLETON from class org.slf4j.LoggerFactory 使用hbm2java时,使用hibernate-distribution- 3.3.1

访问不了自己创建的Contentprovider,报错:java.lang.SecurityException: Permission Denial

情景:1.A,B两个程序,A程序提供ContentProvider:B程序访问A程序的ContendProvider 2.在A程序中已经添加权限: <provider android:name=".provider.UserProvider" android:authorities="com.example.listview.userprovider"></provider> 问题:A程序部署后,再运行B程序,报错: 03-11 21:48:

java.lang.SecurityException:JCE cannot authenticate the provider BC

出现:java.lang.SecurityException:JCE cannot authenticate the provider BC 2种方法:修改jdk的提供者: 在jdk/jre/lib/sercurity/java.security 增加 security.provider.11=org.bouncycastle.jce.provider.BouncyCastleProvider 导入bcprov-jdk15-145.jar