【发布时间】:2011-05-15 09:22:18
【问题描述】:
对于我的应用程序,我需要处理加密的 ZIP 文件。尽管他们的网站看起来很可怕,但似乎 Chilkat 的 commercial Zip gem 可能是实现这一目标的最佳方式。
因为这是一个商业 gem,所以 Bundler 所查看的任何典型 gem 资源中都没有它。我能够在 Mac OS X 下安装 Linux 64 位版本的 gem(虽然我还没有尝试运行它,所以还没有关于它是否真的有效的消息)。但是,我首先尝试让 Bundler 识别并从我下载的 .gem 文件中加载 gem。
Bundler 有一个 path attribute,我已经尝试以多种方式使用它,但我还没有让它工作:
- 我尝试使用 path 指向 .gem 文件本身,但 path 需要一个目录。
- 我尝试将 .gz 添加到 .gem 文件的末尾并解压缩 - 我得到了一个目录,其中包含 data.tar.gz 和 metadata.gz。指向包含这两个文件的提取目录的路径不起作用。
- 我尝试提取 data.tar.gz 和 metadata.gz 并将提取的版本放在我指向路径的目录中。这失败了。
- 我注意到 gem 没有 gemspec 文件 - 我创建了一个并将它放在目录中。不走运。
这是我得到的错误:
$ bundle install
Fetching source index for http://rubygems.org/
Fetching source index for http://gems.github.com/
Could not find gem 'chilkat (>= 0, runtime)' in source at /Users/username/appname/vendor/cache/chilkat-9.1.0-x86_64-linux.
Source does not contain any versions of 'chilkat (>= 0, runtime)'
关于如何让 Bundler 看到 gem 确实在这个目录中的任何想法?除了似乎不起作用的路径属性之外的任何其他选项?
非常感谢!
【问题讨论】:
-
您能否围绕它构建一个 gem,需要 .gem 文件,并带有适当的 gemspec?
标签: ruby-on-rails ruby rubygems bundler