Ruby Can';t使用asdf安装gems
因此,我将切换到一个使用Ruby Can';t使用asdf安装gems,ruby,asdf-vm,Ruby,Asdf Vm,因此,我将切换到一个使用ruby的项目。他们使用asdf作为包管理器 我在安装gems时遇到问题,我正在使用zsh,我想路径可能有问题 运行gem安装bundler输出:您没有/Library/Ruby/Gems/2.3.0目录的写入权限。 ruby-v 输出:ruby 2.3.7p456(2018-03-28修订版63024)[universal.x86\u 64-darwin18] 哪个ruby 输出:/usr/bin/ruby 我尝试用asdf global ruby 2.5.3为ruby
ruby
的项目。他们使用asdf
作为包管理器
我在安装gems时遇到问题,我正在使用zsh
,我想路径可能有问题
运行gem安装bundler
输出:您没有/Library/Ruby/Gems/2.3.0目录的写入权限。
ruby-v
输出:ruby 2.3.7p456(2018-03-28修订版63024)[universal.x86\u 64-darwin18]
哪个ruby
输出:/usr/bin/ruby
我尝试用asdf global ruby 2.5.3
为ruby设置一个全局版本,但这似乎没有改变版本
这是我的gem环境
:
RubyGems Environment:
- RUBYGEMS VERSION: 2.5.2.3
- RUBY VERSION: 2.3.7 (2018-03-28 patchlevel 456) [universal.x86_64-darwin18]
- INSTALLATION DIRECTORY: /Library/Ruby/Gems/2.3.0
- USER INSTALLATION DIRECTORY: /Users/carlos.grijalva/.gem/ruby/2.3.0
- RUBY EXECUTABLE: /System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/bin/ruby
- EXECUTABLE DIRECTORY: /usr/local/bin
- SPEC CACHE DIRECTORY: /Users/carlos.grijalva/.gem/specs
- SYSTEM CONFIGURATION DIRECTORY: /Library/Ruby/Site
- RUBYGEMS PLATFORMS:
- ruby
- universal-darwin-18
- GEM PATHS:
- /Library/Ruby/Gems/2.3.0
- /Users/carlos.grijalva/.gem/ruby/2.3.0
- /System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/lib/ruby/gems/2.3.0
- GEM CONFIGURATION:
- :update_sources => true
- :verbose => true
- :backtrace => false
- :bulk_threshold => 1000
- REMOTE SOURCES:
- https://rubygems.org/
- SHELL PATH:
- /Users/carlos.grijalva/.asdf/shims
- /Users/carlos.grijalva/.asdf/bin
- /Users/carlos.grijalva/bin
- /usr/local/bin
- /usr/local/bin
- /usr/bin
- /bin
- /usr/sbin
- /sbin
听起来您可能需要在
.zshrc
中添加相关行,以便识别asdf垫片。你可以找到说明书
对于macOS&zsh,要附加到.zshrc的正确行包括:
echo -e '\n. $HOME/.asdf/asdf.sh' >> ~/.zshrc
echo -e '\n. $HOME/.asdf/completions/asdf.bash' >> ~/.zshrc
这样做之后,
source~/.zshrc
或重新启动终端似乎是asdf安装/etc问题。您是否在shell启动中添加了asdf行?嗯,应该在.zshrc
文件中完成吗?不确定在哪里添加行,因为这是您的启动文件。当您安装asdf时,它实际上说明了要做什么。我不是说这是(或唯一)问题,而是。。。实际上,您需要让asdf访问您的垫片/etc.Hmm,试图找出要为此添加的确切行…也看到了这一点,并运行了这些确切的命令。出于某种原因,我仍然得到:您没有/Library/Ruby/Gems/2.3.0目录的写入权限。
而且我似乎无法使用asdf
更改Ruby的版本。不知道还能是什么happening@CarlosG90你有没有打开一个新的终端,让它们真正生效?所有这些命令所做的就是修改启动脚本。是的,修改并运行source~/.zshrc
还检查了实际文件是否已更改,并多次重新启动终端。Ruby版本似乎没有改变。@CarlosG90您能运行哪个Ruby
,哪个asdf
,哪个gem
并发布结果吗?另外,检查$PATH并查看/Users/username/asdf
文件夹与/usr/bin
相关的位置(/usr/bin
是保存系统ruby/gem命令的位置)路径似乎不正确,我可以添加它们,现在垫片就在那里了!谢谢