将Java AWS S3代码部署到openfaas时出错
以下是我编写的代码的一部分:将Java AWS S3代码部署到openfaas时出错,java,amazon-web-services,openfaas,Java,Amazon Web Services,Openfaas,以下是我编写的代码的一部分: S3Object obj1 = null; obj1 = s3client.getObject("bucketname", "file.yml"); S3ObjectInputStream instream = obj1.getObjectContent (); 将代码部署到openfaas时,我遇到以下错误: 错误:不兼容的类型:无法将InputStream转换为 S3ObjectInputStream S3ObjectInputStream流内= obj1.
S3Object obj1 = null; obj1 = s3client.getObject("bucketname", "file.yml");
S3ObjectInputStream instream = obj1.getObjectContent ();
将代码部署到openfaas时,我遇到以下错误:
错误:不兼容的类型:无法将InputStream转换为
S3ObjectInputStream S3ObjectInputStream流内=
obj1.getObjectContent()
因此,我对AWS了解不多(目前),但在阅读的规范中,您的声明可能不正确,因为似乎没有支持两个
字符串输入的S3Client.getObject()
实现。相反,它正在寻找一个GetObjectRequest
(即S3Client.getObject(GetObjectRequest GetObjectRequest)
)
因此,您的实现可能必须如下所示:
S3Object S3Object=s3client.getObject(新的GetObjectRequest(bucket,key))
这里有一个例子:你能为你要做的事情添加更多的上下文吗?代码片段?您是否已阅读错误消息?它非常直截了当s3object obj1=null;obj1=s3client.getObject(“bucketname”、“file.yml”);S3ObjectInputStream instream=obj1.getObjectContent();@YashThat是一个编译错误。您在部署代码时很可能会遇到问题。我已经将您提供的代码片段作为问题的一部分。但是正如@Stephen C所指出的,只有在部署时才可能遇到这个问题。您能否确认是否可以在本地运行此操作?尝试了此操作,但编译时仍会出现相同的错误