1

我正在使用 Rhodes 开发 android 应用程序。我已经在 Rhodes 安装了 HTTpary gem。现在,当我在应用程序顶部编写语句“require 'httparty'”时,它给了我类似“没有要加载的文件”之类的错误。我应该怎么做才能解决这个问题?

4

3 回答 3

1

这只是一个猜测,因为带有 Rhodes 环境;但如果这是一个普通的 ruby​​ 脚本,你首先需要拥有require 'rubygems'(假设你使用了 ruby​​gems ......)。

于 2011-03-17T04:51:32.817 回答
1

文档中,向下滚动到“将 Ruby 扩展库添加到您的 Rhodes 应用程序”开始的部分。它详细介绍了将外部库包含到应用程序中的 3 种方法,总结如下。

  1. 将 ruby​​ 扩展添加到单个应用程序
  2. 将 ruby​​ 库添加到单个应用程序
  3. 将 ruby​​ 库添加到为所有应用程序构建的 Rhodes 框架

基本的 Rhodes 框架只包含被认为足够通用的东西,因此可以将构建的应用程序包大小保持在较低水平。任何不在基础框架中的东西都可以通过上述方法包含在应用程序中。

于 2011-05-23T17:42:42.533 回答
0

摩托罗拉的文档太可怕了;如果可以,请允许我提供帮助。首先,检查 Ruby 代码中的常量$LOAD_PATHS以查看 Rhodes 搜索的完整路径列表。此路径中的任何.rb文件都会自动提供给require.

然后你必须决定是将这个库添加到整个 Rhodes 框架还是只是你的应用程序;我个人一次选择一个应用程序,因为这样可以减少不兼容的机会,并且您的应用程序仍然提供所有库rhodes-*version/lib/framework

如果您想将库添加到您的应用程序,文档建议将其放入目录app/lib中,但请记住,仅搜索此确切路径,因此如果您没有.rb与您的 require 语句同名的文件直接在此路径下,不会自动检测到。我之所以提到这一点,是因为常见的结构是一个文件,其中库名直接放在 中lib,而实际的库内容位于同名文件夹中。

示例:该mime-types库由:lib/mime-types.rb和组成lib/mime/,它们的名称不同,并且在包含在 Ruby 中时可能会导致这种混淆。

于 2013-09-23T08:33:04.743 回答