目前很多小伙伴提到Minio版本升级问题,一下为修改方法:
依赖修改
1 <dependency> 2 <groupId>io.minio</groupId> 3 <artifactId>minio</artifactId> 4 <version>8.0.3</version> 5 </dependency>
类添加如下import内容
1 import io.minio.*;
主要问题如下:
1.MinioClient的构造函数方式变为从builder里获取
1 修改前:MinioClient minioClient = new MinioClient(minioUrl, minioName,minioPass);
1 修改后: MinioClient.builder().endpoint(minioUrl) 2 .credentials(minioName, minioPass) 3 .build();
2.检查桶的存在
1 修改前:boolean isExist = minioClient.bucketExists(bucketName);
1 修改后:boolean isExist = minioClient.bucketExists(BucketExistsArgs.builder().bucket(bucketName).build()
3.创建桶的方式
1 修改前:minioClient.makeBucket(newBucket);
1 修改后:minioClient.makeBucket(MakeBucketArgs.builder().bucket(newBucket).build());
4.文件上传方式
1 修改前:minioClient.putObject(newBucket,objectName, stream,stream.available(),"application/octet-stream");
1 修改后:PutObjectArgs objectArgs = PutObjectArgs.builder().object(objectName) 2 .bucket(newBucket) 3 .contentType("application/octet-stream") 4 .stream(stream,stream.available(),-1).build(); 5 minioClient.putObject(objectArgs);
5.获取文件流
1 修改前:inputStream =minioClient.getObject(bucketName, objectName);
1 修改后: GetObjectArgs objectArgs = GetObjectArgs.builder().object(objectName) 2 .bucket(bucketName).build(); 3 inputStream = minioClient.getObject(objectArgs);
6.删除文件
1 修改前:minioClient.removeObject(bucketName, objectName);
修改后: RemoveObjectArgs objectArgs = RemoveObjectArgs.builder().object(objectName)
.bucket(bucketName).build();
minioClient.removeObject(objectArgs);
如有小伙伴也遇到了相同的问题,并修改了其他相关的地方,可以联系小弟一起学习探讨