简体   繁体   中英

Atom-Editor: Don't work rubocop with atom

I tried connect rubocop in atom and got error in atom.

linter-registry.js [sm]:144 [Linter] Error running RuboCop Error: /usr/lib/ruby/2.3.0/rubygems/dependency.rb:319:in `to_specs': Could not find 'rubocop' (>= 0.a) among 16 total gem(s) (Gem::LoadError)
Checked in 'GEM_PATH=/home/kurilovichay/.rvm/gems/ruby-2.3.1:/home/kurilovichay/.rvm/gems/ruby-2.3.1@global', execute `gem env` for more information
    from /usr/lib/ruby/2.3.0/rubygems/dependency.rb:328:in `to_spec'
    from /usr/lib/ruby/2.3.0/rubygems/core_ext/kernel_gem.rb:65:in `gem'
    from /usr/local/bin/rubocop:22:in `<main>'
    at parseFromStd (/home/kurilovichay/.atom/packages/linter-rubocop/src/index.js:41:43)
    at Object.<anonymous> (/home/kurilovichay/.atom/packages/linter-rubocop/src/index.js:212:27)
    at next (<anonymous>)
    at step (/home/kurilovichay/.atom/packages/linter-rubocop/src/index.js:11:273)

which rubocop return:

/usr/local/bin/rubocop

it's wrong?

It seems that you're using rvm to manage your environment. What i did to get it to work was follow the instructions on their repo: https://github.com/AtomLinter/linter-rubocop#settings

# make sure I'm in the global gemset
$ rvm gemset use global
# install the gem
$ gem install rubocop

configure atom to use the global. Edit your atom's config file ( config.cson ) and add

*:
  "linter-rubocop":
    executablePath: "~/.rvm/gems/ruby-2.3.1@global/wrappers"
  "linter-ui-default": {}

Note: make sure that the ruby version is the one you're using.

I had this same issue when working on a Rails 6 application in Ubuntu 20.04 with rbenv as my ruby version manager.

I already had rubocop installed in the project, but Atom editor was still throwing this error.

All I had to do was to install the rubocop gem to be available globally on the machine. Open a new terminal and install it using:

gem install rubocop

That's all.

I hope this helps

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM