Ruby 执行gem时,未知命令
每当我输入gem命令时,例如Ruby 执行gem时,未知命令,ruby,rubygems,gem,Ruby,Rubygems,Gem,每当我输入gem命令时,例如 gem "tilt" 或 我得到这个错误: While executing gem ... <RuntimeError> Unknown command tilt 执行gem时。。。 未知命令倾斜 当我运行gemlist时,tilt和mysql都会显示在列表上,因此它们都已安装。事实上,列表中的每一项都会出现这个错误。这可能是什么原因造成的?gem没有骗你,它们不是有效的gem命令 也许你把命令行和Bundler搞混了?例如,添加 gem "til
gem "tilt"
或
我得到这个错误:
While executing gem ... <RuntimeError>
Unknown command tilt
执行gem时。。。
未知命令倾斜
当我运行
gemlist
时,tilt和mysql都会显示在列表上,因此它们都已安装。事实上,列表中的每一项都会出现这个错误。这可能是什么原因造成的?gem
没有骗你,它们不是有效的gem
命令
也许你把命令行和Bundler搞混了?例如,添加
gem "tilt"
安装到GEM文件并运行bundle install
将安装tilt。但Bundler使用自己的语法,而不是shell脚本。要直接使用gem
二进制文件安装tilt,您必须执行以下操作:
gem install tilt
运行
gem help
将提供gem
的命令行参数列表。您使用的是Gemfile语法,应该使用命令行语法。尝试一下:
gem install mysql2 -v 0.2.7
请确保您的语法正确,以便输入更多指导原则
gem帮助
要查看ruby可接受的语法
如果出现此错误“您没有/库的写入权限”
您始终可以添加sudo
来提升权限
例如,sudogem安装
在输入密码之前使用sudo
,这将为您提供管理权限(在您键入计算机密码之后)
在此之后,您可能需要运行
bundle install
来安装gem。我之所以这样问,是因为我试图使用命令将mysql设置为特定版本:gem'mysql2',0.2.7'。不幸的是,当我使用这个命令时,我得到了相同的错误。知道为什么吗?因为这不是我说的有效命令。如果您像我的问题一样阅读gem
的帮助文档,以及那些特定于安装的gem help install
的帮助文档,您将找到安装特定版本的正确参数:gem install mysql2--0.2.7版
。感谢您的提示,Andrew。我从另一个stackoverflow页面获得了原始命令,但我不明白为什么它不能在我的系统上工作。我还是不知道,但你的命令确实有效。也许它与操作系统有关?不。正如我在回答中所解释的,您试图运行的是一个Bundler使用的Gemfile。请找出原因。命令“gem'mysql2'、'0.2.7'”用于文件Gemfile,而不是命令行。对于命令行,使用Andrew的建议:“gem安装mysql2——版本0.2.7”
gem install mysql2 -v 0.2.7