Я работаю под macOS Catalina версии 10.15.1. Когда я запускаю консоль rails в своем проекте и пытаюсь выполнить запрос типа User.first
, я получаю:
objc[57093]: +[__NSCFConstantString initialize] мог выполняться в другом потоке, когда был вызван fork(). objc[57093]: +[__NSCFConstantString initialize] мог выполняться в другом потоке, когда был вызван fork(). Мы не можем безопасно вызывать или игнорировать его в дочернем процессе fork(). Вместо этого происходит сбой. Установите точку останова на objc_initializeAfterForkError для отладки.
Я следовал этому ответу и добавил OBJC_DISABLE_INITIALIZE_FORK_SAFETY
в мой .zshrc
file, который выглядит так:
ZSH=$HOME/.oh-my-zsh
# You can change the theme with another one:
# https://github.com/robbyrussell/oh-my-zsh/wiki/themes
ZSH_THEME="robbyrussell"
# Useful oh-my-zsh plugins for Le Wagon bootcamps
plugins=(git gitfast zsh-autosuggestions last-working-dir zsh-syntax-highlighting common-aliases history-substring-search)
# Prevent Homebrew from reporting - https://github.com/Homebrew/brew/blob/master/share/doc/homebrew/Analytics.md
export HOMEBREW_NO_ANALYTICS=1
# Actually load Oh-My-Zsh
source "${ZSH}/oh-my-zsh.sh"
unalias rm # No interactive rm by default (brought by plugins/common-aliases)
export OBJC_DISABLE_INITIALIZE_FORK_SAFETY=YES
# Load rbenv if installed (To manage your Ruby versions)
export PATH="${HOME}/.rbenv/bin:${PATH}"
type -a rbenv > /dev/null && eval "$(rbenv init -)"
# Load nvm if installed (To manage your Node versions)
export NVM_DIR="$HOME/.nvm"
[ -s "/usr/local/opt/nvm/nvm.sh" ] && . "/usr/local/opt/nvm/nvm.sh"
# Anaconda binaries (python, pip, conda, jupyter, pytest, pylint etc.)
export PATH="/anaconda3/bin:${HOME}/anaconda3/bin:${PATH}"
# Rails and Ruby uses the local `bin` folder to store binstubs.
# So instead of running `bin/rails` like the doc says, just run `rails`
# Same for `./node_modules/.bin` and nodejs
export PATH="./bin:./node_modules/.bin:${PATH}:/usr/local/sbin"
# Store your own aliases in the ~/.aliases file and load the here.
[[ -f "$HOME/.aliases" ]] && source "$HOME/.aliases"
# Encoding stuff for the terminal
export LANG=en_US.UTF-8
export LC_ALL=en_US.UTF-8
export EDITOR=atom
Когда я запускаю в своем терминале echo $OBJC_DISABLE_INITIALIZE_FORK_SAFETY
, я получаю YES, поэтому я думаю, что переменная среды установлена правильно ... но это не решает проблему.
Как я могу решить эту проблему?