执行gem时,未知命令

nul*_*ull 11 ruby gem rubygems

每当我输入一个gem命令,比如

gem "tilt"
Run Code Online (Sandbox Code Playgroud)

要么

gem "mysql"
Run Code Online (Sandbox Code Playgroud)

我收到此错误:

While executing gem ... <RuntimeError>
Unknown command tilt
Run Code Online (Sandbox Code Playgroud)

当我运行时gem list,倾斜和mysql都显示在列表中,因此它们已安装.实际上,我在列表中的每个项目上都会出现此错误.可能是什么导致了这个?

And*_*all 25

gem不是骗你,他们不是有效的gem命令.

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

gem "tilt"
Run Code Online (Sandbox Code Playgroud)

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

gem install tilt
Run Code Online (Sandbox Code Playgroud)

运行gem help将为您提供gem命令行参数的列表.


Dav*_*ood 5

您正在使用 Gemfile 语法,并且应该使用命令行语法。尝试一下:

gem install mysql2 -v 0.2.7
Run Code Online (Sandbox Code Playgroud)