मुझे पुरानी रेल 2.3 ऐप मिली है। यह बहुत जटिल है और इसमें कोई शॉक नहीं है (सदमे, डरावनी)। मुझे rspec और ककड़ी के लिए उपयोग किया जाता है, इसलिए मैंने सोचा कि मैं चश्मे और अंतराल के लिए परिभाषित चश्मा और सुविधाओं को प्राप्त करने के लिए काम करना शुरू कर दूंगा। अगर मुझे पता है कि वास्तव में क्या असफल होगा तो इसे अपग्रेड करना आसान है।लोड करने के लिए ऐसी कोई फ़ाइल नहीं - rspec/matchers - rspec-rails, कंधे, ककड़ी, फैक्ट्री गर्ल, Rails2.3.10
वैसे भी, मुझे इंटरनेट पर संसाधनों को ढूंढना बहुत मुश्किल लगता है जो दिखाता है कि रेलवे 2.3 में rspec, ककड़ी, फैक्ट्री गर्ल और कंधे कैसे स्थापित करें। मेरे बंडल इस प्रकार है:
source "http://rubygems.org"
# Production gems
gem "rails", "2.3.10"
gem "nokogiri", "1.4.4"
gem "mysql", "~> 2.8.1"
group :development do
# bundler requires these gems in development
gem 'rspec', '1.3.2'
gem 'rspec-core', '2.5.2'
gem 'rspec-rails', '1.3.4'
end
group :test do
# bundler requires these gems while running tests
gem 'cucumber-rails', '0.4.1'
gem 'factory_girl'
gem 'shoulda', '2.11.3'
gem 'shoulda-matchers'
end
जब मैं
bundle exec rspec spec,
मैं चाहिये से निम्नलिखित स्टैकट्रेस मिल चलाने के लिए जाना:
/Users/sys/src/proj/rails/ruby/1.8/gems/shoulda-2.11.3/lib/shoulda/integrations/rspec2.rb:8: no such file to load -- rspec/matchers (MissingSourceFile)
from /Users/sys/src/proj/vendor/rails/activesupport/lib/active_support/dependencies.rb:184:in `require'
from /Users/sys/src/proj/vendor/rails/activesupport/lib/active_support/dependencies.rb:184:in `require'
from /Users/sys/src/proj/rails/ruby/1.8/gems/shoulda-2.11.3/lib/shoulda.rb:4
from /Library/Ruby/Gems/1.8/gems/bundler-1.0.14/lib/bundler/runtime.rb:68:in `require'
from /Library/Ruby/Gems/1.8/gems/bundler-1.0.14/lib/bundler/runtime.rb:68:in `require'
from /Library/Ruby/Gems/1.8/gems/bundler-1.0.14/lib/bundler/runtime.rb:66:in `each'
from /Library/Ruby/Gems/1.8/gems/bundler-1.0.14/lib/bundler/runtime.rb:66:in `require'
from /Library/Ruby/Gems/1.8/gems/bundler-1.0.14/lib/bundler/runtime.rb:55:in `each'
from /Library/Ruby/Gems/1.8/gems/bundler-1.0.14/lib/bundler/runtime.rb:55:in `require'
from /Library/Ruby/Gems/1.8/gems/bundler-1.0.14/lib/bundler.rb:120:in `require'
from /Users/sys/src/proj/config/boot.rb:119:in `load_gems'
from /Users/sys/src/proj/config/../vendor/rails/railties/lib/initializer.rb:164:in `process'
from /Users/sys/src/proj/config/../vendor/rails/railties/lib/initializer.rb:113:in `send'
from /Users/sys/src/proj/config/../vendor/rails/railties/lib/initializer.rb:113:in `run'
from /Users/sys/src/proj/config/environment.rb:12
from /Users/sys/src/proj/spec/spec_helper.rb:4:in `require'
from /Users/sys/src/proj/spec/spec_helper.rb:4
from /Users/sys/src/proj/spec/models/announcement_spec.rb:1:in `require'
from /Users/sys/src/proj/spec/models/announcement_spec.rb:1
from /Users/sys/src/proj/rails/ruby/1.8/gems/rspec-core-2.5.2/lib/rspec/core/configuration.rb:386:in `load'
from /Users/sys/src/proj/rails/ruby/1.8/gems/rspec-core-2.5.2/lib/rspec/core/configuration.rb:386:in `load_spec_files'
from /Users/sys/src/proj/rails/ruby/1.8/gems/rspec-core-2.5.2/lib/rspec/core/configuration.rb:386:in `map'
from /Users/sys/src/proj/rails/ruby/1.8/gems/rspec-core-2.5.2/lib/rspec/core/configuration.rb:386:in `load_spec_files'
from /Users/sys/src/proj/rails/ruby/1.8/gems/rspec-core-2.5.2/lib/rspec/core/command_line.rb:18:in `run'
from /Users/sys/src/proj/rails/ruby/1.8/gems/rspec-core-2.5.2/lib/rspec/core/runner.rb:55:in `run_in_process'
from /Users/sys/src/proj/rails/ruby/1.8/gems/rspec-core-2.5.2/lib/rspec/core/runner.rb:46:in `run'
from /Users/sys/src/proj/rails/ruby/1.8/gems/rspec-core-2.5.2/lib/rspec/core/runner.rb:10:in `autorun'
from /Users/sys/src/proj/rails/ruby/1.8/bin/rspec:19
Googling के लिए कि त्रुटि डरावनी कुछ हिट प्रदान करता है .. मुझे यकीन नहीं है कि मैंने क्या गलत किया है?
rspec कोर निकाला जा रहा है देता है:
बंडल कार्यकारी rspec कल्पना/मॉडल/announcement_spec.rb /Users/sys/.rvm/gems/[email protected]/gems/bundler-1.0 .14 / lib/bundler/rubygems_integration.rb: 143: 'मणि' में: rspec-core बंडल का हिस्सा नहीं है। इसे Gemfile में जोड़ें। (रत्न :: LoadError)
opt/स्थानीय/bin/rspec
cat /opt/local/bin/rspec
#!/usr/bin/env ruby
#
# This file was generated by RubyGems.
#
# The application 'rspec-core' is installed as part of a gem, and
# this file is here to facilitate running it.
#
require 'rubygems'
version = ">= 0"
if ARGV.first =~ /^_(.*)_$/ and Gem::Version.correct? $1 then
version = $1
ARGV.shift
end
gem 'rspec-core', version
load Gem.bin_path('rspec-core', 'rspec', version)
की सामग्री मुझे आश्चर्य है कि अगर यह अन्य rspec की मैं स्थापित किया है से जूझ रहा है (मैं बंडलर साथ भी एक Rails3 एप्लिकेशन इंस्टॉल किया हुआ,/आरवीएम) ... सुनिश्चित नहीं है कि आरएसपीईसी ऑप्ट/लोकल/बिन से क्यों नहीं चल रहा है और बंडल नहीं है, हालांकि ..
यदि मैं rspec-core को हटाता हूं, तो मुझे मिलता है: /Library/Ruby/Gems/1.8/gems/bundler-1.0.14/lib/bundler/rubygems_integration।आरबी: 143: 'मणि' में: आरएसपीसी-कोर बंडल का हिस्सा नहीं है। इसे Gemfile में जोड़ें। (जेम :: लोडरर) \t /Users/sys/src/proj/rails/ruby/1.8/bin/rspec:18 –
मैं सभी rspec रत्नों को अनइंस्टॉल करने का प्रयास करता हूं, बस अपने जेमफाइल में उपरोक्त 2 रत्न डालता हूं, और चल रहा बंडल स्थापित करें। – Mori
अभी भी समस्याएं पैदा करता है। हालांकि, अब यह शिकायत कर रहा है कि फ़ाइल \t में/opt/local/bin/rspec से है: 18 ... उस स्क्रिप्ट की आपकी फ़ाइल सामग्री क्या है? –