目前很多小伙伴提到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);
如有小伙伴也遇到了相同的问题,并修改了其他相关的地方,可以联系小弟一起学习探讨
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」