"gem install"如何工作?这不直观......
我的宝石真的在这里:
[root@localhost Téléchargement]# ll *.gem
-rw-rw-r-- 1 jean jean 16353818 mar 5 11:39 ruby-processing-1.0.9.gem
Run Code Online (Sandbox Code Playgroud)
但一个惯用的"宝石安装"看不到它......
[root@localhost Téléchargement]# gem install ruby-processing-1.0.9.gem
ERROR: could not find gem ruby-processing-1.0.9.gem locally or in a repository
Run Code Online (Sandbox Code Playgroud)
这有什么问题?
Osc*_*car 48
也许我还没有完全理解这个问题.但是如果你只是想在本地机器上安装一个gem,那么你需要从控制台进入的所有内容都进入包含你的gem和的目录gem install --local your.gem
.
Har*_*ina 24
如果您需要在此示例foo-bar中构建/安装自己的gem文件,请进行更多说明.
gem build foo-bar.gemspec
gem install --local foo-bar-0.1.0.gem
Run Code Online (Sandbox Code Playgroud)
我正在研究如何做到这一点,这篇文章是第一个结果:)
小智 12
问题是gem install正在寻找安装在其默认目录中的gem.你可以通过运行找出它的位置:
$ gem environment
Run Code Online (Sandbox Code Playgroud)
这会给你一些类似的东西:
> RubyGems Environment:
> - RUBYGEMS VERSION: 1.3.6
> - RUBY VERSION: 1.8.6 (2007-09-24 patchlevel 111) [i486-linux]
> - INSTALLATION DIRECTORY: /usr/lib/ruby/gems/1.8
> - RUBY EXECUTABLE: /usr/bin/ruby1.8
> - EXECUTABLE DIRECTORY: /usr/bin
> - RUBYGEMS PLATFORMS:
> - ruby
> - x86-linux
> - GEM PATHS:
> - /usr/lib/ruby/gems/1.8
> - /home/adminuser/.gem/ruby/1.8
Run Code Online (Sandbox Code Playgroud)
在创业板路径下的位置就是创业板安装期待找到宝石安装.因此,您的问题的解决方案是将gem从其当前位置复制到预期目录,即
$ cp my.gem /home/adminuser/.gem/ruby/1.8/
Run Code Online (Sandbox Code Playgroud)
如果你然后运行gem install它将获取你的gem并安装它.确保以超级用户身份运行copy命令(sudo,如果你像我一样运行Ubuntu)
PS如果,当你运行$ gem环境时,你得到一个"未定义的方法'manage_gems'用于Gem:Module(NoMethodError)"错误,然后编辑/ usr/bin/gem并确保文件的前三行看起来像这样:
归档时间: |
|
查看次数: |
60670 次 |
最近记录: |