尝试使用 React 在 rails 应用程序上设置 ruby 时纱线出现问题
Problem with yarn when trying to set a ruby on rails application with react
按照 this 教程,我在最初的步骤中遇到了奇怪的错误。
在 运行 之后:
rails new rails-react-tutorial --webpack=react
然后我会在 bundle install
之后尝试
rails webpacker:install:react rails generate react:installyarn install
我会得到:
[DEPRECATION] The trollop gem has been renamed to optimist and will no longer be supported. Please switch to optimist as soon as possible.
rails aborted!
ArgumentError: Malformed version number string Yarn v0.1.1 2011 Jesper Kjeldgaard
/*/rails-react-tutorial/bin/rails:9:in `<top (required)>'
/*/rails-react-tutorial/bin/spring:15:in `<top (required)>'
bin/rails:3:in `load'
bin/rails:3:in `<main>'
Tasks: TOP => webpacker:install:react => webpacker:verify_install => webpacker:check_yarn
(See full trace by running task with --trace)
检查 this issue 后,我已经删除了 gems 的 bin 路径中的 yarn 文件,正如上次评论 versions/2.6.1/lib/ruby/gems/2.6.0/gems/yarn-0.1.1/lib/yarn.rb
中所建议的那样,但随后我收到如下错误:
rails webpacker:install:react
rails aborted!
LoadError: cannot load such file -- /*/.rbenv/versions/2.6.1/lib/ruby/gems/2.6.0/gems/yarn-0.1.1/lib/yarn.rb
/*/rails-react-tutorial/config/application.rb:7:in `<main>'
/*/rails-react-tutorial/Rakefile:4:in `<main>'
/*/rails-react-tutorial/bin/rails:9:in `<top (required)>'
/*/rails-react-tutorial/bin/spring:15:in `<top (required)>'
bin/rails:3:in `load'
bin/rails:3:in `<main>'
所以这将迫使我再次安装 gem。我正在使用 Rails 6.0.2.1-v 和 ruby 2.6.1p33(2019-01-30 修订版 66950)[x86_64-linux].
您需要的 yarn
工具不是 gem,而是 Yarn package manager. I suspect you have installed the yarn gem,它似乎是一个旧的未使用的无关项目。
在你的命令行上试试:
gem uninstall yarn
确保安装了 Yarn 包管理器。在 Mac 上,您可以使用 Homebrew:
brew install yarn
然后重试项目安装命令,应该是:
rails webpacker:install:react
rails generate react:install
yarn install
我找到了这个 here 并解决了问题:
for ver in $(rbenv whence yarn); do
RBENV_VERSION="$ver" gem uninstall -ax yarn
rm -f "$(rbenv prefix "$ver")/bin/yarn"
done
rbenv rehash
按照 this 教程,我在最初的步骤中遇到了奇怪的错误。
在 运行 之后:
rails new rails-react-tutorial --webpack=react
然后我会在 bundle install
rails webpacker:install:react rails generate react:installyarn install
我会得到:
[DEPRECATION] The trollop gem has been renamed to optimist and will no longer be supported. Please switch to optimist as soon as possible.
rails aborted!
ArgumentError: Malformed version number string Yarn v0.1.1 2011 Jesper Kjeldgaard
/*/rails-react-tutorial/bin/rails:9:in `<top (required)>'
/*/rails-react-tutorial/bin/spring:15:in `<top (required)>'
bin/rails:3:in `load'
bin/rails:3:in `<main>'
Tasks: TOP => webpacker:install:react => webpacker:verify_install => webpacker:check_yarn
(See full trace by running task with --trace)
检查 this issue 后,我已经删除了 gems 的 bin 路径中的 yarn 文件,正如上次评论 versions/2.6.1/lib/ruby/gems/2.6.0/gems/yarn-0.1.1/lib/yarn.rb
中所建议的那样,但随后我收到如下错误:
rails webpacker:install:react
rails aborted!
LoadError: cannot load such file -- /*/.rbenv/versions/2.6.1/lib/ruby/gems/2.6.0/gems/yarn-0.1.1/lib/yarn.rb
/*/rails-react-tutorial/config/application.rb:7:in `<main>'
/*/rails-react-tutorial/Rakefile:4:in `<main>'
/*/rails-react-tutorial/bin/rails:9:in `<top (required)>'
/*/rails-react-tutorial/bin/spring:15:in `<top (required)>'
bin/rails:3:in `load'
bin/rails:3:in `<main>'
所以这将迫使我再次安装 gem。我正在使用 Rails 6.0.2.1-v 和 ruby 2.6.1p33(2019-01-30 修订版 66950)[x86_64-linux].
您需要的 yarn
工具不是 gem,而是 Yarn package manager. I suspect you have installed the yarn gem,它似乎是一个旧的未使用的无关项目。
在你的命令行上试试:
gem uninstall yarn
确保安装了 Yarn 包管理器。在 Mac 上,您可以使用 Homebrew:
brew install yarn
然后重试项目安装命令,应该是:
rails webpacker:install:react
rails generate react:install
yarn install
我找到了这个 here 并解决了问题:
for ver in $(rbenv whence yarn); do
RBENV_VERSION="$ver" gem uninstall -ax yarn
rm -f "$(rbenv prefix "$ver")/bin/yarn"
done
rbenv rehash