4

我是亞馬遜網絡服務的新手,我試圖使用命令行界面工具在亞馬遜彈性地圖縮減作業上運行作業流。Amazon Elastic Map Reduce:列出命令行工具中的作業流程問題?

我遵循從這個開發人員指南的amazon開發人員指南從aws.s的步驟,但事情並沒有讓我清楚。

如果我執行命令./elastic-mapreduce --list 列出作業流程。顯示以下錯誤。

/home/pdurai/Applications/elastic-mapreduce-cli/amazon/coral/httpdestinationhandler.rb:23: warning: else without rescue is useless 
/usr/local/rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require': /home/pdurai/Applications/elastic-mapreduce-cli/amazon/coral/httpdestinationhandler.rb:19: syntax error, unexpected ':', expecting keyword_then or ',' or ';' or '\n' (SyntaxError) 
/home/pdurai/Applications/elastic-mapreduce-cli/amazon/coral/httpdestinationhandler.rb:36: syntax error, unexpected keyword_end, expecting $end 
    from /usr/local/rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require' 
    from /home/pdurai/Applications/elastic-mapreduce-cli/amazon/coral/awsquery.rb:6:in `<top (required)>' 
    from /usr/local/rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require' 
    from /usr/local/rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require' 
    from /home/pdurai/Applications/elastic-mapreduce-cli/amazon/coral/service.rb:8:in `<top (required)>' 
    from /usr/local/rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require' 
    from /usr/local/rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require' 
    from /home/pdurai/Applications/elastic-mapreduce-cli/amazon/coral/elasticmapreduceclient.rb:6:in `<top (required)>' 
    from /usr/local/rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require' 
    from /usr/local/rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require' 
    from /home/pdurai/Applications/elastic-mapreduce-cli/client.rb:6:in `<top (required)>' 
    from /usr/local/rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require' 
    from /usr/local/rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require' 
    from /home/pdurai/Applications/elastic-mapreduce-cli/commands.rb:7:in `<top (required)>' 
    from /usr/local/rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require' 
    from /usr/local/rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require' 
    from /home/pdurai/Applications/elastic-mapreduce-cli/elastic-mapreduce-cli.rb:5:in `<top (required)>' 
    from /usr/local/rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require' 
    from /usr/local/rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require' 
    from ./elastic-mapreduce:6:in `<main>' 

在此先感謝,任何人都可以請告訴我爲什麼我列出工作流程時出現上述錯誤。

回答

4

檢查即時拍攝RVM,通過使用以下命令

$ rvm list 

,它會顯示:

ruby-1.8.7-p374 
    ruby-2.0.0-p247 

,那麼你應該specifiy的RVM版本,使用下面的命令

$ rvm use 1.8.7 

然後你可以嘗試列出工作流程。 。 。

+0

謝謝@sasi在我按照你所說的改變之後工作正常。 – Prabhu

1

我建議學習如何使用服務控制檯首先完成該過程。

看來您的命令行工具無法正確連接。也許這是你的access_key和secret_key的問題。

+0

我已經嘗試在控制檯,並運行良好。但我希望通過命令行界面(CLI)創建和運行作業流程,以便每天自動執行作業流程。讓我知道我可以在Ruby 1.9版本中運行這個命令嗎 – Prabhu

+0

我自己使用Java SDK –

2

如果rvm不會爲你工作,你可以嘗試改變Current符號鏈接:

cd /System/Library/Frameworks/Ruby.framework/Versions 
sudo rm Current 
sudo ln -s 1.8 Current 

您可能需要調整第三個參數指向正確的版本。

+1

我非常愛你 – user2491598

0

爲@sasikkumar的答案,但有rbenv

$ rbenv versions 

,它會顯示:

1.8.7-p370 
    * 1.9.3-p194 (set by /PATH_NEEDED/.ruby-version) 

(可選)如果1.8.7-P370沒有出現

$ rbenv install 1.8.7-p370 

然後您應該使用以下命令來指定rbenv版本

$ rbenv local 1.8.7-p370 

local因爲它會在PATH_NEEDED使用,但你可以使用global用於一般用途)

那麼你可以嘗試列出jobflows。 。 。

相關問題