如何使用java将S3中的文件从AWS EMR上载到EC2机器
有没有办法将存储在AWS S3上的文件从EMR实例上载到另一个EC2实例目录 到目前为止,我正在尝试使用JavaSFTP来实现它。还尝试使用AWSS3客户端将对象放入S3 这是我的代码:如何使用java将S3中的文件从AWS EMR上载到EC2机器,java,amazon-s3,amazon-ec2,sftp,amazon-emr,Java,Amazon S3,Amazon Ec2,Sftp,Amazon Emr,有没有办法将存储在AWS S3上的文件从EMR实例上载到另一个EC2实例目录 到目前为止,我正在尝试使用JavaSFTP来实现它。还尝试使用AWSS3客户端将对象放入S3 这是我的代码: try { String bucketName = "my-bucket/product-images"; BufferedImage image; URL url =new URL(product_image_url);
try {
String bucketName = "my-bucket/product-images";
BufferedImage image;
URL url =new URL(product_image_url);
image = ImageIO.read(url);
String imageName = FilenameUtils.getBaseName(product_image_url);
/*Tried creating new file in current directory*/
File file = new File(imageName);
ImageIO.write(image,"jpg",file);
s3client.putObject(new PutObjectRequest(bucketName,imageName,file));
/*Here passing source as file name created in current dir
I have also tried giving bucket path as
sftpChannel.put("s3://xwalker-images/product-images/"+imageName, imageName);
*/
sftpChannel.put("imageName, "/my_images/"+imageName);
} catch (SftpException e) {
e.printStackTrace();
}
在这里,我在sftpChannel.put处得到错误NULL指针,因为imageName得到NULL。
有人能告诉我哪里出了问题吗?
我已经尝试过在本地机器上执行,效果很好。但当我在AWS-EMR上运行它时,它失败了。
是否可以实现AWS S3中我所期望的功能?是否需要java?您可以直接使用命令将文件从S3复制到EC2。不是AWS专家,只是提个建议。是的。。Java是必需的,因为我在Java map reduce程序中动态地执行它,Java是必需的吗?您可以直接使用命令将文件从S3复制到EC2。不是AWS专家,只是提个建议。是的。。Java是必需的,因为我正在Java map reduce程序中进行动态操作