Nem lehet létrehozni egy vödör S3 segítségével ruby ​​AWS-SDK v2

szavazat
3

Amikor megpróbál létrehozni egy új vödröt egy S3 fiókot a rubin AWS-SDK 2-es verziója, mindig kap a következő kivétellel:

NoMethodError: undefined method `location_name' for nil:NilClass
  index_members_by_location_name at /home/ubuntu/.rvm/gems/jruby-1.7.4/gems/aws-sdk-core-2.0.21/lib/seahorse/model/shapes.rb:283
...

Azt inicializálni az S3 ügyfélnek a megfelelő régiót és helyes adatokat. A következő része az én minta kód:

...
s3 = Aws::S3::Client.new(region: region, credentials: credentials)

bucket = s3.create_bucket(bucket: 'mynewbucket')
puts bucket.inspect

# List the available buckets
puts Available buckets:
resp = s3.list_buckets
resp.buckets.each do |bucket|
    puts bucket.inspect
end

Egy megjegyzés, hogy a kódot, amely felsorolja a kanalak működik. Bárki, aki tudja, hogy mit csinálok rosszul?

EDIT:

Azt is hozzátette, ezt a kódot, hogy sorolja fel a tárgyakat egy meglévő vödör, és ez dob pontosan ugyanazt a hibát, mint korábban:

resp = s3.list_objects(bucket: 'existingbucket')
resp.contents.each do |object|
  puts #{object.key} => #{object.etag}
end
A kérdést 05/02/2015 18:31
a forrás felhasználó
Más nyelveken...                            


1 válasz

szavazat
2

Ez a hiba okozza a hibát a JRuby 1.7.4 és hogyan kezeli a enumerable #inject és # each.with_object. Frissítés JRuby megoldja ezt a problémát.

Válaszolt 12/02/2015 18:02
a forrás felhasználó

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more