被一个jersey的UnrecognizedPropertyException所困扰,痛苦的地方在于自定义的restful API在其他应用调用是没有问题的,而在我的应用中调用则抛异常。把互联网上的相关异常的文章都翻了一遍,似乎都不对症;然后在自定义的restful API中打印debug信息,找不到蛛丝马迹,可以肯定服务器端的资源获取代码是没有问题的,因为可以通过http访问,从debug信息也是能accept出所有的json文本,可是就是在WebResource的get函数反射业务数据类型时提示某个字段不认识。。。。。。,但是字段全部是存在的而且都加了annotation,无语。。。。。。
我是通过JNI调用的,我决定写一个小的java code的单元测试,避开JNI,结果单元测试报同样的异常。。。。。。无语,没有办法,我都是在命令行执行,我决定用eclipse调试一下java单元测试,建了一个eclipse工程,将所有的jar包都引用上,运行,异常的事情发生了------异常没有抛出,调用结果正确。同样的代码,命令行和eclipse工程的区别是什么呢?现在怀疑可能是CLASSPATH的问题了,因为我的CLASSPATH内容巨大,我将CLASSPATH腰斩了一下再export,发现java单元测试在命令行也通过了。虫子的尾巴露出来了,最后分析发现,CLASSPATH包含了多个版本的jersey,将低版本的jersey和jackson的jar包去除后,问题解决!
分享到:
相关推荐
主要介绍了Spring配置中的"classpath:"与"classpath*:"的区别,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
.classpath
关于java的classpath补充,详细说明如何配置classpath,如火热让javac正确编译运行java文件
classpath备份
Classpath Variable 解决办法
classpath 和path
java classpath 理解 包括 1 在命令行查看classpath 2 在命令行设置classpath 3 classpath理解 4 命令行中直接使用classpath 很经典哦
自学如何使用框架的工具,项目框架添加classpath文件的
jdk的classpath路径和环境配置 jdk的classpath路径和环境配置
classpath修改,相关jsp页面classpath修改
本文详细介绍了path与classpath,以及它们之间的区别。
CLASSPATH="$CLASSPATH:""$jar" done windows : SETLOCAL ENABLEDELAYEDEXPANSION set LIB=xx set CLASSPATH=. FOR %%C IN (LIB\*.jar) DO set CLASSPATH=!CLASSPATH!;%%C echo %CLASSPATH%
Android 4.4.4源码的.classpath文件,主要用于将Android 4.4.4源码的导入到eclipse工具中,提供给需要学习android源码的同学,也自己顺便记录一下,方便查找。
详细讲解了java classpath 的详细过程,让你不在为配置java环境而烦恼,讲的非常好!word格式的!
Java环境配置与设置JAVA_HOME_CLASSPATH_PATH的目的
Jamvm是一个c语言编写的开源的java虚拟机,它使用GNU classpath作为java类库
NULL 博文链接:https://hahalzb.iteye.com/blog/690802
一份详细解释java的classpath和package的含义和配置方法的文档。