我尝试使用以下命令在EMR上提交带有2个相关jar包A.jar和B.jar的spark作业
aws emr add-steps --cluster-id j-1WM5F79YY6EIN --steps Type=Spark,Name="test", \
Args=[--master,yarn,--deploy-mode,cluster,--class,myClassName,--jars, \
"s3://myBucketName/project.jar,s3://myBucketName/A.jar,s3://myBucketName/B.jar", \
s3://myBucketName/project.jar,param1,value1,param2,value2] --region us-west-2
这里有两个问题:
只能在--jars参数中接受前两个jar包。在上面的命令中,为B.jar中的类抛出了ClassNotFound异常。如果我使用--jars提交,“s3://myBucketName/project.jar,s3://myBucketName/B.jar,s3://myBucketName/A.jar”。在A.jar
我必须将project.jar作为--jars参数中的第一个jar,以为我需要在命令后面再次提供它作为app jar。否则,找不到主要课程。
对EMR不太熟悉所以对我的问题的任何帮助都非常感谢。