ruby - ruby 中的 unshift + file.join

标签 ruby file

$:.unshift File.join(File.dirname(__FILE__),\
'vendor','addressable-2.1.0','lib','addressable','uri')

上面的代码是否访问具有以下路径的文件:

'vendor/addressable-2.1.0/lib/addressable/uri'

我正在尝试将可寻址 gem 供应到 Sinatra 应用程序中,以将其部署到我的托管提供商,但我不断收到:

"no such file to load -- addressable/uri"

将“unshift”行放入config.ru后。

最佳答案

上面的代码将路径“vendor/addressable-2.1.0/lib/addressable/uri”添加到用于查找外部文件的全局变量中。该路径将相对于放置此代码的文件的目录。因此,如果 {dir} 是放置 config.ru 的目录,它将添加 {dir}/vendor/addressable-2.1.0/lib/addressable/uri 到包含的查找路径。

关于ruby - ruby 中的 unshift + file.join,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1395688/

相关文章:

ruby-on-rails - 使用 spork 的 Rails 项目 - 总是必须使用 spork?

ruby-on-rails - 在 Sidekiq 作业结束前释放 ActiveRecord 连接

python - 在 python 中读取 zip 文件时出现内存错误

java - 为什么我的 `getClass().getResource("日志")` 返回 null?

java - 使用 opencsv 将 CSV 写入字符串而不创建实际文件或临时文件

c++ - 接收文件错误

ruby - 使用 ruby​​ 的 treetop peg 解析 debian Packages.gz

ruby - 每当 Amazon SQS 队列更新时运行 Ruby 任务

ruby - 使用 Test::Unit,如何在所有测试(但不是每个测试)之前运行一些代码?

mysql - 我应该使用文件还是数据库?