16

每当我输入 gem 命令时,例如

gem "tilt"

或者

gem "mysql"

我收到此错误:

While executing gem ... <RuntimeError>
Unknown command tilt

当我运行gem list时,tilt 和 mysql 都显示在列表中,因此它们已安装。事实上,我对列表中的每个项目都收到了这个错误。这可能是什么原因造成的?

4

3 回答 3

29

gem不是在骗你,它们不是有效的gem命令。

也许您将命令行与 Bundler 混淆了?例如,添加

gem "tilt"

到 Gemfile 并运行bundle install将安装倾斜。但是 Bundler 使用自己的语法,而不是 shell 脚本。要直接使用二进制文件安装倾斜,gem您必须执行以下操作:

gem install tilt

运行gem help会给你一个gem命令行参数的列表。

于 2012-06-02T15:36:34.837 回答
3

您正在使用 Gemfile 语法,您应该使用命令行语法。试试这个:

gem install mysql2 -v 0.2.7
于 2012-06-02T17:18:00.873 回答
1

确保您的语法正确,以便您可以键入更多指南

gem help

要查看 ruby​​ 可接受的语法,

如果您收到此错误“您没有 /Library 的写入权限”

您可以随时添加sudo以提升权限。

例如。sudo gem install <gemname>

在您的代码之前使用sudo,这将为您提供管理访问权限(在您输入计算机密码之后)。

之后,您可能必须运行bundle install才能安装 gem。

于 2018-02-09T19:08:28.407 回答