【发布时间】:2018-12-22 20:11:33
【问题描述】:
我已使用捆绑程序“bundle install --path vendor/bundle”在我的项目中安装我的 gem mysql2。
我的 Gemfile 是这样的
source 'https://rubygems.org'
gem 'mysql2', '~> 0.3.20'
现在我想在我的 ruby 脚本中使用这个 gem,但它不起作用。总是显示“没有这样的文件 mysql2”。
我的代码是这样的
require 'json'
load_paths = Dir.pwd + "/vendor/bundle/ruby/2.5.0/gems/"
$LOAD_PATH.unshift(*load_paths)
require 'mysql2'
def lambda_handler(event:, context:)
# # TODO implement
@db_host = "host"
@db_user = "user"
@db_pass = "pass"
@db_name = "db"
client = Mysql2::Client.new(:host => @db_host, :username => @db_user, :password => @db_pass, :database => @db_name)
@cdr_result = client.query("SELECT count(*) from table_name")
puts @cdr_result
{ statusCode: 200, body: JSON.generate('Hello from Lambda!') }
end
错误是这样来的
Traceback (most recent call last):
2: from replaceFile.rb:4:in `<main>'
1: from /home/vagrant/.rvm/rubies/ruby-2.5.0/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in `require'
/home/vagrant/.rvm/rubies/ruby-2.5.0/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in `require': cannot load such file -- mysql2 (LoadError)
我正在使用 ruby 版本 = ruby 2.5.0p0(2017-12-25 修订版 61468)[x86_64-linux]
【问题讨论】:
标签: ruby