错误:执行gem时...Gem :: FilePermissionError您没有对/Library/Ruby/Gems/2.6.0目录的写入权限

问题描述

我正在授予写入权限,以便在我的Rails应用程序中捆绑或安装gem。

不推荐,但我尝试使用 sudo gemname install,它对我也不起作用。

运行bundle install后无法连接

问题出在这里

An error occurred while installing puma (4.3.3),and Bundler cannot continue. Make sure that gem install puma -v '4.3.3' succeeds before bundling.

然后我跑步 gem install puma -v '4.3.3'

并渲染 ERROR: While executing gem ... (Gem::FilePermissionError) You don't have write permissions for the /Library/Ruby/Gems/2.6.0 directory.

我认为这可能会有所帮助。这是我当地的宝石清单


benchmark (default: 0.1.0)
bigdecimal (default: 2.0.0)
bundler (2.1.4,1.17.3)
cgi (default: 0.1.0)
codecov (0.2.7)
colorize (0.8.1)
csv (default: 3.1.2)
date (default: 3.0.0)
dbm (default: 1.1.0)
delegate (default: 0.1.0)
did_you_mean (default: 1.4.0)
docile (1.3.2)
etc (default: 1.1.0)
fcntl (default: 1.0.0)
fiddle (default: 1.0.0)
fileutils (default: 1.4.1)
forwardable (default: 1.3.1)
getoptlong (default: 0.1.0)
io-console (default: 0.5.6)
ipaddr (default: 1.2.2)
irb (default: 1.2.6)
json (default: 2.3.0)
logger (default: 1.4.2)
matrix (default: 0.2.0)
minitest (5.13.0)
mutex_m (default: 0.1.0)
net-pop (default: 0.1.0)
net-smtp (default: 0.1.0)
net-telnet (0.2.0)
nio4r (2.5.4)
observer (default: 0.1.0)
open3 (default: 0.1.0)
openssl (default: 2.1.2)
ostruct (default: 0.2.0)
power_assert (1.1.7)
prime (default: 0.1.1)
pstore (default: 0.1.0)
psych (default: 3.1.0)
racc (default: 1.4.16)
rake (13.0.1)
rdoc (default: 6.2.1)
readline (default: 0.0.2)
readline-ext (default: 0.1.0)
reline (default: 0.1.5)
rexml (default: 3.2.3)
RSS (default: 0.2.8)
sdbm (default: 1.0.0)
simplecov (0.19.0)
simplecov-html (0.12.3)
singleton (default: 0.1.0)
stringio (default: 0.1.0)
strscan (default: 1.0.3)
test-unit (3.3.4)
timeout (default: 0.1.0)
tracer (default: 0.1.0)
uri (default: 0.10.0)
webrick (default: 1.6.0)
xmlrpc (0.3.0)
yaml (default: 0.1.0)
zlib (default: 1.1.0)

我认为这与没有x代码命令行有关。

我已经下载了x-code命令行并更新了系统软件,但仍在呈现此错误

我认为这可能与我有

〜/ .zshrc文件

在这里

# If you come from bash you might have to change your $PATH.
export PATH=$HOME/bin:/usr/local/bin:$PATH

# Path to your oh-my-zsh installation.
export ZSH="/Users/mvizcaino/.oh-my-zsh"

# Set name of the theme to load --- if set to "random",it will
# load a random theme each time oh-my-zsh is loaded,in which case,# to kNow which specific one was loaded,run: echo $RANDOM_THEME
# See https://github.com/robbyrussell/oh-my-zsh/wiki/Themes
ZSH_THEME="robbyrussell"

# Set list of themes to pick from when loading at random
# Setting this variable when ZSH_THEME=random will cause zsh to load
# a theme from this variable instead of looking in ~/.oh-my-zsh/themes/
# If set to an empty array,this variable will have no effect.
# ZSH_THEME_RANDOM_CANDIDATES=( "robbyrussell" "agnoster" )

# Uncomment the following line to use case-sensitive completion.
# CASE_SENSITIVE="true"

# Uncomment the following line to use hyphen-insensitive completion.
# Case-sensitive completion must be off. _ and - will be interchangeable.
# HYPHEN_INSENSITIVE="true"

# Uncomment the following line to disable bi-weekly auto-update checks.
# disABLE_AUTO_UPDATE="true"

# Uncomment the following line to automatically update without prompting.
# disABLE_UPDATE_PROMPT="true"

# Uncomment the following line to change how often to auto-update (in days).
# export UPDATE_ZSH_DAYS=13

# Uncomment the following line if pasting URLs and other text is messed up.
# disABLE_MAGIC_FUNCTIONS=true

# Uncomment the following line to disable colors in ls.
# disABLE_LS_COLORS="true"

# Uncomment the following line to disable auto-setting terminal title.
# disABLE_AUTO_TITLE="true"

# Uncomment the following line to enable command auto-correction.
# ENABLE_CORRECTION="true"

# Uncomment the following line to display red dots whilst waiting for completion.
# COMPLETION_WAITING_DOTS="true"

# Uncomment the following line if you want to disable marking untracked files
# under VCS as dirty. This makes repository status check for large repositories
# much,much faster.
# disABLE_UNTRACKED_FILES_DIRTY="true"

# Uncomment the following line if you want to change the command execution time
# stamp shown in the history command output.
# You can set one of the optional three formats:
# "mm/dd/yyyy"|"dd.mm.yyyy"|"yyyy-mm-dd"
# or set a custom format using the strftime function format specifications,# see 'man strftime' for details.
# HIST_STAMPS="mm/dd/yyyy"

# Would you like to use another custom folder than $ZSH/custom?
# ZSH_CUSTOM=/path/to/new-custom-folder

# Which plugins would you like to load?
# Standard plugins can be found in ~/.oh-my-zsh/plugins/*
# Custom plugins may be added to ~/.oh-my-zsh/custom/plugins/
# Example format: plugins=(rails git textmate ruby lighthouse)
# Add wisely,as too many plugins slow down shell startup.
plugins=(git)

source $ZSH/oh-my-zsh.sh

# User configuration

# export MANPATH="/usr/local/man:$MANPATH"

# You may need to manually set your language environment
# export LANG=en_US.UTF-8

# Preferred editor for local and remote sessions
# if [[ -n $SSH_CONNECTION ]]; then
#   export EDITOR='vim'
# else
#   export EDITOR='mvim'
# fi

# Compilation flags
# export ARCHFLAGS="-arch x86_64"

# Set personal aliases,overriding those provided by oh-my-zsh libs,# plugins,and themes. Aliases can be placed here,though oh-my-zsh
# users are encouraged to define aliases within the ZSH_CUSTOM folder.
# For a full list of active aliases,run `alias`.
#
# Example aliases
alias zshconfig= "mate ~/.zshrc"
# alias ohmyzsh="mate ~/.oh-my-zsh"

# Add RVM to PATH for scripting. Make sure this is the last PATH variable change.
#export PATH="$PATH:$HOME/.rvm/bin"

# Ruby with rbenv initialize
eval "$(rbenv init -)"

export PATH="/usr/local/opt/ruby/bin:$PATH"

export GEM_HOME=/Users/mvizcaino/gems

export PATH="$HOME/.rbenv/bin:$PATH"

alias brewup='brew update; brew upgrade; brew cleanup; brew doctor'


我不确定还有其他原因会导致这种情况,但是我对此错误几乎一无所知。

解决方法

您可以通过在项目的本地安装gem来避免权限问题

bundle install --path=vendor

如果捆绑软件在安装puma时仍然给您错误,则表明您的构建工具无法正常工作。 bundle install的完整输出应该告诉您哪里出了问题。

错误通常在“捆绑商无法继续”消息上方