And*_*кин 19 ruby windows unicode rubygems
我跑的时候
gem install <somegem>
Run Code Online (Sandbox Code Playgroud)
命令该gem
实用程序尝试访问我的主目录.它包含一些非拉丁字符,因此安装失败.例如:
E:\ruby\bin>gem install <somegem>
ERROR: While executing gem ... (Errno::ENOENT)
No such file or directory - C:\Documents and Settings\<user>
Run Code Online (Sandbox Code Playgroud)
如果我使用包含ASCII字符的用户名切换到另一个用户帐户,则只能gem
正常工作.
有谁知道怎么告诉gem不检查我的主目录?
更新:我尝试按照下面的建议设置GEM_HOME,但它没有帮助(仍检查用户主目录)
Ser*_*sov 34
只需在运行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%
Run Code Online (Sandbox Code Playgroud)
E:/ Dev/Ruby /是我的Ruby路径.似乎HOMEPATH可以更改为路径中仅ASCII字符的任何其他内容.