【问题标题】:cannot load such file无法加载此类文件
【发布时间】:2015-08-16 19:15:14
【问题描述】:

我正在构建自己的第一个 Gem。在我创建了一些功能后,我订购了所有文件,例如 gem 构建的最佳实践。

我将所有文件移动到正确的文件夹中。 可执行文件在bin/boss-mailer,其余的都放在lib文件夹中,如:

可执行文件很简单。我只是将可执行文件设置为 ruby​​ 并尝试在 lib 文件中要求 boss_mailer.rb

这无法加载我的文件。我可以通过使用require "./boss_mailer" 开始指向当前路径来要求它。 但是在 Github 上的其他 Gems 中,我看到人们只是使用 require "filename" 来引用加载文件。喜欢这里:gli gem

我的问题

我是否必须预先构建 gem 或其他东西来要求我的文件而不指向当前路径? 在不使用./ 的情况下需要文件lib/boss_mailer' 需要做什么?

【问题讨论】:

    标签: ruby gem require


    【解决方案1】:

    你在使用Bundler吗?我会建议这样做。然后运行你的二进制文件就像:

    bundle exec ./bin/boss_mailer.rb
    

    请确保您在boss-mailer.gemspec 中正确配置$LOAD_PATH,但如果您遵循了最佳实践,您可能已经这样做了。

    【讨论】:

    • 哦,我写这个问题的时间比这个答案进来的时间要长。我只是在没有捆绑程序的情况下执行了文件。 bundle exec bin/boss_mailer 做了所有的事情。非常感谢!
    • 一个问得很好的问题自己回答了:)
    猜你喜欢
    • 1970-01-01
    • 2016-11-20
    • 2023-03-10
    • 2015-11-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-10-09
    • 2015-05-30
    相关资源
    最近更新 更多