【问题标题】:Why do I get "Thin adapter not found"?为什么我会收到“未找到瘦适配器”?
【发布时间】:2012-02-11 17:24:45
【问题描述】:

我是一名 iOS 开发人员,几乎没有 Ruby 经验,正在尝试关注“Getting Started with iOS Mobile Development and a Sinatra API”以获取在 Heroku 上运行的 API。

我在 Git 上获取了sample project,所以我知道我的设置与我应该拥有的相同。

我已经安装了捆绑包,并认为一切都应该准备就绪,但是每当我执行foreman start 时,我都会得到以下信息:

2:14:56 web.1     | started with pid 5140
12:14:57 web.1     | No adapter found for {MY PROJECT'S FILEPATH}
12:14:57 web.1     | process terminated
12:14:57 system    | sending SIGTERM to all processes

我做错了什么,或者我需要做什么才能让它运行?

谢谢!

【问题讨论】:

    标签: ruby-on-rails heroku thin


    【解决方案1】:

    您缺少了解如何启动应用程序所需的 config.ru 文件。

    在您的根目录中创建一个名为 config.ru 的文件,并在其中添加以下内容:

    require './api'
    run Sinatra::Application
    

    您可以通过在项目根目录中运行rackup 来测试它是否正确。如果配置文件正确,那么您的服务器应该启动。

    请阅读When to use config.ruhttp://devcenter.heroku.com/articles/rack 了解更多信息。

    【讨论】:

    • 我不得不将 Sinatra::Application 中的 A 大写,但后来它起作用了。谢谢,谢谢你的链接!
    • @Ethan 感谢您指出这一点,我已经更新了我的答案。
    • 这是一个很好的答案,但是链接到 Heroku 的原始帖子(我也刚刚签出)建议跳过 config.ru 文件:“您将更好地控制如何如果您跳过 config.ru 而是在 Procfile 中声明您自己的 Web 进程类型,您的应用程序就会被执行。”但是,按照他们的指示会导致这个问题,幸运的是,您已经为我们解决了这个问题。
    猜你喜欢
    • 2015-01-03
    • 1970-01-01
    • 1970-01-01
    • 2013-01-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多