有人知道Amazon Web Services的Scala SDK吗?我特别关注EMR作业。
有人知道Amazon Web Services的Scala SDK吗?我特别关注EMR作业。
请查看 AWScala(它是基于 AWS SDK for Java 的简单封装):
https://github.com/seratch/AWScala
[2015年04月07日更新]: 另一个非常有前途的库来自 @dwhjames:
用于 Amazon Web Services 的异步 Scala 客户端 https://dwhjames.github.io/aws-wrap/
您可以直接使用标准的Java SDK而无需从Scala中遇到任何问题,但我不知道是否有任何特定于Scala的SDK。
async
类集使用古老且无用的Java Future
,没有完成回调函数,因此它对Scala不是很适合。 - expertAtlassian的aws-scala相当不错。
p.s. 目前该库基本支持S3、DynamoDB、CloudFormation和SQS。
build.sbt
:libraryDependencies += "com.amazonaws" % "aws-java-sdk" % "1.12.1"
然后:
package example
import com.amazonaws.regions.Regions;
import com.amazonaws.services.s3.AmazonS3;
import com.amazonaws.services.s3.AmazonS3ClientBuilder;
import com.amazonaws.services.s3.model.AmazonS3Exception;
import com.amazonaws.services.s3.model.Bucket;
// for conversions from java collections to scala collections
// e.g. java.util.List to scala List
import scala.jdk.CollectionConverters._
object Hello extends App {
// create s3 client
val s3:AmazonS3 = AmazonS3ClientBuilder
.standard()
.withRegion(Regions.AP_SOUTHEAST_2).build();
// get bucket list
val buckets:List[Bucket] = s3.listBuckets().asScala.toList
// print bucket names
buckets.foreach(b => println(b.getName()))
}
aws-java-sdk
(30 MB lib),即使你只需要例如Amazon S3和aws-java-sdk-s3
依赖项就足够了(使用aws-java-sdk-core
为2.7 + 2.4 MB)。 - Jonik