接手的一个运维项目,新加了一个字段,本地运行调试都是正常的,部署之后死活显示不出来,也不报错,逐写一个单独查询,接口如下
@ApiOperation("查询所有")
@GetMapping("/list")
public R list() {
*******
return R.ok();
}
本地运行是正常的,但是部署之后,调用这个接口就报类型转换错误
挣扎了很久,才找到原因:
Jenkins 部署失败, 修改后代码, 没能成功部署到服务器上
而报类型转换错误的原因是
同一个类里面有这么一个方法 太有迷惑性了
@ApiOperation("根据ID查询")
@GetMapping("/{deptId}")
public R getxxxxxxxByDeptId(@PathVariable("deptId") Long deptId, @RequestParam Map<String, Object> params) throws Exception {
return R.ok().put("page", pageUtils);
}
总结: 如果发现本地运行和部署后运行的效果不一样,
考虑方向:
1 配置文件
2 数据库
3 缓存
4 如果还找不到原因,如果生产环境是多台服务器,各个服务器时间是不是没有同步.
5 看一下部署的jar包,是不是真的部署成功了
还是不行的话 远程debug一下吧