老项目升级部署weblogic12.2.1.4报错but incompatible return types: int and others

JDK1.6老项目(原始在weblogic10下运行,没有问题)现升级部署weblogic12.2.1.4
1.现已经将JDK升级至1.8,且在tomcat下运行没有问题
2.但是在weblogic12下提示部署失败,报:java.lang.IllegalArgumentException: methods with same signature spr () but incompatible return types: int and others,具体错误如下

img

java.lang.IllegalArgumentException: methods with same signature spr () but incompatible return types: void and others
java.lang.IllegalArgumentException:具有相同签名spr()但返回类型不兼容的方法:void和其他

首先要去排除因为升级导致的环境配置问题,可参照这个实例,去对应纠正:https://blog.csdn.net/weixin_32780623/article/details/114707318?spm=1001.2101.3001.6661.1&utm_medium=distribute.pc_relevant_t0.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-1-114707318-blog-97942177.pc_relevant_3mothn_strategy_and_data_recovery&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-1-114707318-blog-97942177.pc_relevant_3mothn_strategy_and_data_recovery&utm_relevant_index=1

其次,尝试下这个实例解题思路:https://blog.csdn.net/qq_35130066/article/details/81099691?spm=1001.2101.3001.6650.2&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-2-81099691-blog-114707318.pc_relevant_multi_platform_whitelistv3&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-2-81099691-blog-114707318.pc_relevant_multi_platform_whitelistv3&utm_relevant_index=3

spr () 这个方法有问题, 全局搜索一下看看有几个,看报错是名字和参数一样, 返回类型不一样导致的异常, 如果代码没问题的话, 可尝试的解决办法是部署到一台新机器上, 避免旧的环境的影响,

weblogic 部署报错问题总结
https://blog.csdn.net/xun_2008/article/details/23452757

参考一下https://blog.csdn.net/sz15732624895/article/details/80043670

解决方案:

1检查程序代码中是否有重载的方法,即方法名相同但返回类型不同的方法,如果有,需要修改代码,使返回类型相同。
2检查是否有第三方库冲突,即多个第三方库中同时使用了相同的方法名但返回类型不同。如果有,可以尝试更新第三方库或者删除冲突的第三方库。
3检查是否有类被多次加载,如果有,可以尝试使用 ClassLoader.clearAssertionStatus() 方法清除断言状态,或者使用 -XX:+RelaxAccessControlCheck 选项来关闭权限检查。