开发者社区> 问答> 正文

java 反射获取目标方法并执行 windows无错 centos上报错?报错

windows 10 与centos6.5 均使用java 1.8.0_131。(该文件是在eclipse上用maven编译,maven中已加uft-8设置,eclipse修改过编译空间编码为utf-8依然无效。)

出现两个已知错误(以下windows简称w,centos简称c):

1.w上跑时 反射获取方法(经测试w与c均成功获得了目标方法),并执行方法返回的是正确的字符串 而centos上跑返回的却是null。

2.windows上跑时 调用反射获得的方法 并传入字符串,w上无错,c上显示参数数目不对。经检测,c与w输出均为正确字符。

综上我感觉是jvm默认编码的问题。但是我在w上加-Dfile.encoding=UTF-8 只是输出文字乱码 但仍然无措。在c上加-Dfile.encoding=GBK 同样输出乱码,但仍然报以上两错。

想请教各位大佬 是不是还存在某些编码设置?还是说因为其他问题呢

 

展开
收起
爱吃鱼的程序员 2020-06-06 15:44:48 742 0
1 条回答
写回答
取消 提交回答
  • https://developer.aliyun.com/profile/5yerqm5bn5yqg?spm=a2c6h.12873639.0.0.6eae304abcjaIB
                        发代码上来,不然没法给你检查,但基本判定是你代码的问题
                    
    
                            我今天再次做了测试 相同代码来反射获取类的方法 居然在w与c上获得的方法居然是不同的
                        
    
                            代码是多个maven的项目 反射涉及到minecraft的内核代码 这涉及东西太多 我没办法把代码传上来 
                        
    
                        同样的代码反射获取的方法不同那肯定是你代码的问题,反射获取方法那块你把代码贴出来
                    
    
                        spring大量用到反射,没出问题。你却出现平台问题,把你的代码贴一下? 
    
    2020-06-06 15:45:06
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
《云服务器运维之Windows篇》 立即下载
TAKING WINDOWS 10 KERNEL 立即下载
ECS运维指南之Windows系统诊断 立即下载