#分からないこと
Gemfile
1gem 'aws-sdk'
Gemfile
1gem 'aws-sdk','~>1' #バージョンを1.0以上2.0未満に指定
とした場合にどちらも
Gemfilerock
1 aws-sdk (1.67.0) 2 aws-sdk-v1 (= 1.67.0) 3 aws-sdk-v1 (1.67.0) 4 json (~> 1.4) 5 nokogiri (~> 1)
と同じ1.67.0のバージョンがインストールされるのはなぜですか?
#分からないことその2
Gemfile
1gem 'aws-sdk' 2gem 'aws-sdk-s3'
Gemfilerock
1 aws-eventstream (1.0.3) 2 aws-partitions (1.189.0) 3 aws-sdk (1.67.0) 4 aws-sdk-v1 (= 1.67.0) 5 aws-sdk-core (3.59.0) 6 aws-eventstream (~> 1.0, >= 1.0.2) 7 aws-partitions (~> 1.0) 8 aws-sigv4 (~> 1.1) 9 jmespath (~> 1.0) 10 aws-sdk-kms (1.23.0) 11 aws-sdk-core (~> 3, >= 3.58.0) 12 aws-sigv4 (~> 1.1) 13 aws-sdk-s3 (1.45.0) 14 aws-sdk-core (~> 3, >= 3.58.0) 15 aws-sdk-kms (~> 1) 16 aws-sigv4 (~> 1.1) 17 aws-sdk-v1 (1.67.0) 18 json (~> 1.4) 19 nokogiri (~> 1) 20 aws-sigv4 (1.1.0) 21 aws-eventstream (~> 1.0, >= 1.0.2)
とした場合
NameError (uninitialized constant コントローラー名::Aws):
のようなネームエラーが出ないのはなぜでしょうか?
gem 'aws-sdk'
だけですと上記のネームエラーが起きます
Awsのクラスはバージョン2でないと使用できないのでエラーが出るのは分かりますが
'aws-sdk-s3'を一緒に入れると起きない意味が分かりません....
#考えたこと
Gemfilerockの記述とは違うバージョンが実際にはインストールされているということでしょうか?
そうであれば実際にプロジェクトで使われているバージョンの確認方法も教えていただきたいです
gemfilerockの記述のバージョンをシステムからインストールしている認識であったので混乱しています
回答お待ちしております
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。