试图通过反应在红宝石上设置红宝石时出现纱线问题

问题描述 投票:1回答:2

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后,我已按照上一条注释versions/2.6.1/lib/ruby/gems/2.6.0/gems/yarn-0.1.1/lib/yarn.rb中的建议删除了宝石在bin路径中的毛线文件,但随后出现如下错误:

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]。

ruby-on-rails reactjs webpack yarn
2个回答
1
投票

您需要的yarn工具不是宝石,而是Yarn package manager。我怀疑您已经安装了yarn gem,它似乎是旧的,未使用的不相关项目。

在命令行上尝试:

gem uninstall yarn

请确保您已安装Yarn程序包管理器。在Mac上,您可以使用Homebrew:

brew install yarn

然后重试项目安装命令,应该是:

rails webpacker:install:react 
rails generate react:install
yarn install

0
投票

我找到了此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
© www.soinside.com 2019 - 2024. All rights reserved.