在我的rails 5.0.0应用程序中,我已将以下内容添加到我的Gemfile中:
group :development, :test do
gem 'byebug', platform: :mri
gem 'rspec-rails', '~> 3.5', '>= 3.5.2'
end
我跑了bundle install
。然后gem成功安装。
然后我跑了下来:
rails generate rspec:install
但是我说错了:
Running via Spring preloader in process 8893
Could not find generator 'rspec:install'. Maybe you meant 'css:assets', 'assets' or 'scaffold'
Run `rails generate --help` for more options.
此错误(Could not find generator 'rspec:install'
)上发布了大量其他问题,
但是他们都没有为我工作,看起来我有一个不同的问题。
包含它所需的,这是我的bundle show
输出:
Gems included by the bundle:
* actioncable (5.0.0.1)
* actionmailer (5.0.0.1)
* actionpack (5.0.0.1)
* actionview (5.0.0.1)
* activejob (5.0.0.1)
* activemodel (5.0.0.1)
* activerecord (5.0.0.1)
* activesupport (5.0.0.1)
* arel (7.1.2)
* builder (3.2.2)
* bundler (1.12.5)
* byebug (9.0.5)
* coffee-rails (4.2.1)
* coffee-script (2.4.1)
* coffee-script-source (1.10.0)
* concurrent-ruby (1.0.2)
* debug_inspector (0.0.2)
* diff-lcs (1.2.5)
* erubis (2.7.0)
* execjs (2.7.0)
* ffi (1.9.14)
* globalid (0.3.7)
* i18n (0.7.0)
* jbuilder (2.6.0)
* jquery-rails (4.2.1)
* listen (3.0.8)
* loofah (2.0.3)
* mail (2.6.4)
* method_source (0.8.2)
* mime-types (3.1)
* mime-types-data (3.2016.0521)
* mini_portile2 (2.1.0)
* minitest (5.9.0)
* multi_json (1.12.1)
* nio4r (1.2.1)
* nokogiri (1.6.8)
* pkg-config (1.1.7)
* puma (3.6.0)
* rack (2.0.1)
* rack-test (0.6.3)
* rails (5.0.0.1)
* rails-dom-testing (2.0.1)
* rails-html-sanitizer (1.0.3)
* railties (5.0.0.1)
* rake (11.2.2)
* rb-fsevent (0.9.7)
* rb-inotify (0.9.7)
* rspec-core (3.5.3)
* rspec-expectations (3.5.0)
* rspec-mocks (3.5.0)
* rspec-rails (3.5.2)
* rspec-support (3.5.0)
* sass (3.4.22)
* sass-rails (5.0.6)
* spring (1.7.2)
* spring-watcher-listen (2.0.0)
* sprockets (3.7.0)
* sprockets-rails (3.2.0)
* sqlite3 (1.3.11)
* thor (0.19.1)
* thread_safe (0.3.5)
* tilt (2.0.5)
* turbolinks (5.0.1)
* turbolinks-source (5.0.0)
* tzinfo (1.2.2)
* uglifier (3.0.2)
* web-console (3.3.1)
* websocket-driver (0.6.4)
* websocket-extensions (0.1.2)
答案 0 :(得分:21)
在我的案例中证明了spring
gem的问题。重启弹簧解决了这个问题。
首先运行bin/spring status
。如果弹簧正在运行,你会得到类似的东西:
Spring is running:
8774 spring server | chessboard | started 14 mins ago
8808 spring app | chessboard 6.52.08 PM | started 12 mins ago | development mode
这意味着您必须通过运行来停止弹簧:
bin/spring stop
然后重新开始:
bin/spring server
然后运行rails generate rspec:install
它应该可以。
您可能需要运行bundle update
。
答案 1 :(得分:3)
我今天遇到了同样的问题,事实证明我忘了在我的Gemfile中添加rspec gem。
在Gemfile中添加以下行解决了这个问题。
gem" rspec-rails"
需要为粉底(rails g foundation:install Y
)
gem' foundation-rails'
添加后,运行bundle
以更新依赖项。
无需重启弹簧。
答案 2 :(得分:0)
只需在@dhrubo_moy的答案中添加一个变体...
bin/spring stop
bundle update
rails generate rspec:install
。在spring
之前重新启动rspec:install
对我不起作用。
答案 3 :(得分:0)
以上所有答案对我都没有作用。
用下面的方法替换rspec gem是我能找到的唯一解决方法。
gem "rspec-core", :github => "rspec/rspec-core"
gem "rspec-expectations", :github => "rspec/rspec-expectations"
gem "rspec-mocks", :github => "rspec/rspec-mocks"
gem "rspec-support", :github => "rspec/rspec-support"
gem "rspec-rails", :github => "rspec/rspec-rails"
我正在使用ruby 2.5.1和gem'rails','〜> 5.0.7','> = 5.0.7.2'