当我跑
gem install <somegem>
命令gem实用程序尝试访问我的主目录。它包含一些非拉丁字符,因此安装失败。例如:
E:\ruby\bin>gem install <somegem> ERROR: While executing gem ... (Errno::ENOENT) No such file or directory - C:\Documents and Settings\<user>
如果我切换到包含ASCII字符的用户名的另一个用户帐户,则gem工作正常。
有人知道如何告诉宝贝不要检查我的主目录?
更新:我试图按照以下建议设置GEM_HOME,但没有帮助(仍然检查用户主目录)
在运行gem之前只需更改HOMEDRIVE和HOMEPATH,然后在(如果需要的话)后还原。
我改变了我的gem.bat这样:
@ECHO OFF SET _HOMEDRIVE=%HOMEDRIVE% SET _HOMEPATH=%HOMEPATH% SET HOMEDRIVE=E: SET HOMEPATH=/Dev/Ruby IF NOT "%~f0" == "~f0" GOTO :WinNT @"ruby.exe" "E:/Dev/Ruby/bin/gem" %1 %2 %3 %4 %5 %6 %7 %8 %9 GOTO :EOF :WinNT @"ruby.exe" "%~dpn0" %* SET HOMEDRIVE=%_HOMEDRIVE% SET HOMEPATH=%_HOMEPATH%
E:/ Dev / Ruby /是我的Ruby路径。似乎HOMEPATH可以改变为任何其他与ASCII只有字符的路径。