今天为了需要,把File需要转为MultipartFile,下列代码,编译启动都没有问题

public static  MultipartFile getMultipartFile(File file){
        FileInputStream fileInputStream;
        MultipartFile multipartFile;
        try {
            fileInputStream = new FileInputStream(file);
            multipartFile = new MockMultipartFile(file.getName(),file.getName(),
                    ContentType.APPLICATION_OCTET_STREAM.toString(),fileInputStream);
        } catch (Exception e) {
            log.error("file转MultipartFile失败", e);
            Result.error(ResponseCode.FILE_OPERATION_FAILED, e.getMessage());
            return null;
        }
        return multipartFile;
    }

但跟踪到下面需要上传文件的时候出错了,后面发现主要是上面函数出现问题

java中File转为MultipartFile的问题解决_开发语言

 

报下面错误org.springframework.mock.web.MockMultipartFile  这个类找不到

multipartFile = new MockMultipartFile(file.getName(),file.getName(),

但明明是加载了,编译启动没问题,但运行到这来出现没找到,比较奇怪。

        网上有些资料需要说加载spring-test包,或单独自己写个这样的类来解决,或者尽量不要使用这样的类,但这些都不是很好的解决办法。

     后来在pom.xml加载下面的jar包就解决了

<dependency>
             <groupId>org.springframework</groupId>
             <artifactId>spring-mock</artifactId>
             <version>2.0.8</version>
         </dependency>

     后来返回上传地址了

java中File转为MultipartFile的问题解决_jvm_02