1. IDEA项目启动时报如下问题

1.1 问题信息

Error:Kotlin: Module was compiled with an incompatible version of Kotlin. The binary version of its metadata is 1.5.1, expected version is 1.1.15.

1.2 解决办法

在IDEA 点击-build->rebuild project ,问题即可解决。

2. No parameter name specified for argument of type

在登录页面时,获取验证码时,报400错误。

No parameter name specified for argument of type

代码如下:

@GetMapping(SecurityConstants.DEFAULT_VALIDATE_CODE_URL_PREFIX + "/{deviceId}")
    public void createCode(@PathVariable String deviceId, HttpServletResponse response) throws Exception {

问题出在没有指定参数名称。在使用SpringMVC绑定基本类型(如String,Integer等)参数时,应通过@RequestParam注解指定具体的参数名称,否则,当源代码在非debug模式下编译后,运行时会引发HandlerMethodInvocationException异常,这是因为只有在debug模式下编译,其参数名称才存储在编译好的代码中。

因此上面的代码需要修改成。

@GetMapping(SecurityConstants.DEFAULT_VALIDATE_CODE_URL_PREFIX + "/{deviceId}")
    public void createCode(@PathVariable(value="deviceId") String deviceId, HttpServletResponse response) throws Exception {
文档更新时间: 2021-09-09 10:54   作者:zyg