MultipartFile 内部的file.transferTo(desc)写入文件时会调用desc.getPath(),如果是绝对路径,则没问题,如果是相对路径,就会无法写入,抛出异常

File desc = new File("ruoyi\uploadPath\upload" + File.separator + "\2021\10\15\a3092bfb-90ad-409a-b3bd-ebb7ff2ecd26.zip")
例如:
System.out.println("-------desc1: "+ desc.getPath());
System.out.println("-------desc2: "+ desc.getCanonicalPath());
输出如下:
-------desc1: ruoyi\uploadPath\upload\2021\10\15\a3092bfb-90ad-409a-b3bd-ebb7ff2ecd26.zip
-------desc2: D:\Workspaces\edu\edu-server-vue\ruoyi\uploadPath\upload\2021\10\15\a3092bfb-90ad-409a-b3bd-ebb7ff2ecd26.zip
则将该路径进行完整路径包裹一下,MultipartFile 其内部调用getPath也能拿到完整路径,即可以支持相对路径的文件上传
file.transferTo(desc) -> file.transferTo(new File(desc.getCanonicalPath()))