0

我试图从日食用下面的代码运行EMR集群:AWS服务角色

RunJobFlowRequest runFlowRequest = new RunJobFlowRequest() 
      .withName("ExtractCollocations" + UUID.randomUUID()) 
      .withInstances(instances) 
      .withSteps(countStepConfig1, countStepConfig2, countStepConfig3, countStepConfig4) 
      .withLogUri("s3n://"+ Bucket_name + "/logs/") 
      .withServiceRole("EMR_DefaultRole") 
      .withJobFlowRole("EMR_EC2_DefaultRole"); 

,并得到错误:

Exception in thread "main" java.lang.NoSuchMethodError: com.amazonaws.services.elasticmapreduce.model.RunJobFlowRequest.withServiceRole(Ljava/lang/String;)Lcom/amazonaws/services/elasticmapreduce/model/RunJobFlowRequest; 
    at LocalApp.runCluster(LocalApp.java:213) 
    at LocalApp.main(LocalApp.java:52) 

如果我删除行 “withServiceRole(” EMR_DefaultRole “)”它要求服务角色

+0

您使用的是什么版本的AWS SDK? –

+0

版本1.11.98 –

回答

0

显然问题出在maven项目上。 Ive打开了新的AWS Java项目,它工作。