问题
I'm using Windows XP SP2, and installed Ruby through Ruby 1.9 one click installer. Then when I try to using ri, I get the following response, can anyone help me with my problem?
C:\Documents and Settings\eyang>ruby --version
ruby 1.9.1p243 (2009-07-16 revision 24175) [i386-mingw32]
C:\Documents and Settings\eyang>ri --version
ri 2.2.2
C:\Documents and Settings\eyang>ri String
Updating class cache with 0 classes...
Nothing known about String
C:\Documents and Settings\eyang>ri
Updating class cache with 0 classes...
No ri data found
If you've installed Ruby yourself, you need to generate documentation using:
make install-doc
from the same place you ran `make` to build ruby.
If you installed Ruby from a packaging system, then you may need to
install an additional package, or ask the packager to enable ri generation.
C:\Documents and Settings\eyang>
By the way, when I try to use gem, I got the following error messages too, anyone can explain it?
C:\Documents and Settings\eyang>gem --version
1.3.5
C:\Documents and Settings\eyang>gem query --remote
*** REMOTE GEMS ***
ERROR: While executing gem ... (Errno::ENOMEM)
Not enough space - <STDOUT>
C:\Documents and Settings\eyang>
回答1:
RubyInstaller do not bundle RI documentation, as it increased the size of the distribution and the time to install the package.
Instead, we bundled CHM (Windows Help) files for both Core and StdLib API.
This was discussed in the RubyInstaller group and the decision was made on that base.
As for your other point, two things: you need to provide a gem name or part of it, since there are 12K gems in RubyForge.
Also, depending on your console configuration (Latin or something) the Not Enough space error will be related to the terminal itself, not RubyGems.
回答2:
Go to the same folder where your ruby is installed. Then do:
rdoc --all --ri
回答3:
windows rubyinstaller doesn't come with the ri for core by default, so install the rdoc-data gem, then it will have it.
回答4:
If you are using rvm
try $ rvm docs generate-ri
回答5:
What might be helpful:
When I ran
ri.cmd -l
command, it worked, though there were no known Classes/ModulesWhen I ran
ri.cmd --list-doc-dirs
, I've got:C:/Ruby25-x64/share/ri/2.5.0/system C:/Ruby25-x64/share/ri/2.5.0/site C:/Users/username/.rdoc</ul>
Nonetheless, there was no physical
.rdoc
folder (C:/Users/username/.rdoc
)Running
rdoc --all --ri
as recommended @GregMoreno did the trick
来源:https://stackoverflow.com/questions/1587354/ruby-1-9-ri-on-windows-knows-nothing-about-any-classes