2012-01-15 10 views
8

Estoy intentando actualizar mi aplicación Rails a 3.2.0.rc2 pero cuando intento hacer un rake db:migrate --trace estoy ahora conseguir el siguiente mensaje de error:No sé cómo compilar la tarea 'db: migrar' con Rails 3.2.0.rc2

DEPRECATION WARNING: The InstanceMethods module inside ActiveSupport::Concern will be no longer included automatically. Please define instance methods directly in ActionController::Base instead. (called from <top (required)> at /Users/Kyle/Desktop/skateparks-web/config/application.rb:4) 
rake aborted! 
Don't know how to build task 'db:migrate' 
/Users/Kyle/.rvm/gems/[email protected]/gems/rake-0.9.2.2/lib/rake/task_manager.rb:49:in `[]' 
/Users/Kyle/.rvm/gems/[email protected]/gems/rake-0.9.2.2/lib/rake/application.rb:115:in `invoke_task' 
/Users/Kyle/.rvm/gems/[email protected]/gems/rake-0.9.2.2/lib/rake/application.rb:94:in `block (2 levels) in top_level' 
/Users/Kyle/.rvm/gems/[email protected]/gems/rake-0.9.2.2/lib/rake/application.rb:94:in `each' 
/Users/Kyle/.rvm/gems/[email protected]/gems/rake-0.9.2.2/lib/rake/application.rb:94:in `block in top_level' 
/Users/Kyle/.rvm/gems/[email protected]/gems/rake-0.9.2.2/lib/rake/application.rb:133:in `standard_exception_handling' 
/Users/Kyle/.rvm/gems/[email protected]/gems/rake-0.9.2.2/lib/rake/application.rb:88:in `top_level' 
/Users/Kyle/.rvm/gems/[email protected]/gems/rake-0.9.2.2/lib/rake/application.rb:66:in `block in run' 
/Users/Kyle/.rvm/gems/[email protected]/gems/rake-0.9.2.2/lib/rake/application.rb:133:in `standard_exception_handling' 
/Users/Kyle/.rvm/gems/[email protected]/gems/rake-0.9.2.2/lib/rake/application.rb:63:in `run' 
/Users/Kyle/.rvm/gems/[email protected]/gems/rake-0.9.2.2/bin/rake:33:in `<top (required)>' 
/Users/Kyle/.rvm/gems/[email protected]/bin/rake:19:in `load' 
/Users/Kyle/.rvm/gems/[email protected]/bin/rake:19:in `<main>' 

la advertencia desaprobación parece estar en lo que respecta a esta línea en application.rb:

Bundler.require(:default, :assets, Rails.env) if defined?(Bundler) 

se supone que esto debe ser eliminado o cambiado en la última versión de Rails? Intenté eliminar esta línea y ejecutar Migrate nuevamente. Entonces ya no recibo la advertencia pero sigo recibiendo el error Don't know how to build task 'db:migrate'. ¿Algunas ideas?

Haciendo un bundle exec rake -T se obtiene la siguiente:

DEPRECATION WARNING: The InstanceMethods module inside ActiveSupport::Concern will be no longer included automatically. Please define instance methods directly in ActionController::Base instead. (called from <top (required)> at /Users/Kyle/Desktop/skateparks-web/config/application.rb:4) 
rake about        # List versions of all Rails frameworks and the environment 
rake assets:clean      # Remove compiled assets 
rake assets:precompile     # Compile all the assets named in config.assets.precompile 
rake cron        # This task is called by the Heroku cron add-on 
rake doc:app        # Generate docs for the app -- also available doc:rails, doc:guides, doc:plugins (options: TEMPLATE=/... 
rake friendlyid:rebuild     # Updates all User and Skatepark friendly IDs 
rake geocode:all       # Geocode all objects without coordinates. 
rake jobs:work       # Alias for resque:work (To run workers on Heroku) 
rake log:clear       # Truncates all *.log files in log/ to zero bytes 
rake middleware       # Prints out your Rack middleware stack 
rake notes        # Enumerate all annotations (use notes:optimize, :fixme, :todo for focus) 
rake notes:custom      # Enumerate a custom annotation, specify with ANNOTATION=CUSTOM 
rake rails:template      # Applies the template supplied by LOCATION=(/path/to/template) or URL 
rake rails:update      # Update configs and some other initially generated files (or use just update:configs, update:scripts... 
rake resque:scheduler     # Start Resque Scheduler 
rake resque:work       # Start a Resque worker 
rake resque:workers      # Start multiple Resque workers. 
rake routes        # Print out all defined routes in match order, with names. 
rake secret        # Generate a cryptographically secure secret key (this is typically used to generate a secret for coo... 
rake sorcery:bootstrap     # Adds sorcery's initializer file 
rake spec        # Run all specs in spec directory (excluding plugin specs) 
rake spec:controllers     # Run the code examples in spec/controllers 
rake spec:helpers      # Run the code examples in spec/helpers 
rake spec:lib       # Run the code examples in spec/lib 
rake spec:mailers      # Run the code examples in spec/mailers 
rake spec:models       # Run the code examples in spec/models 
rake spec:rcov       # Run all specs with rcov 
rake spec:requests      # Run the code examples in spec/requests 
rake spec:routing      # Run the code examples in spec/routing 
rake spec:views       # Run the code examples in spec/views 
rake stats        # Report code statistics (KLOCs, etc) from the application 
rake sunspot:reindex[batch_size,models] # Reindex all solr models that are located in your application's models directory. 
rake sunspot:solr:run     # Run the Solr instance in the foreground 
rake sunspot:solr:start     # Start the Solr instance 
rake sunspot:solr:stop     # Stop the Solr instance 
rake test        # Runs test:units, test:functionals, test:integration together (also available: test:benchmark, test:... 
rake test:recent       # Run tests for {:recent=>"test:prepare"}/Test recent changes 
rake test:single       # Run tests for {:single=>"test:prepare"} 
rake test:uncommitted     # Run tests for {:uncommitted=>"test:prepare"}/Test changes since last checkin (only Subversion and... 
rake time:zones:all      # Displays all time zones, also available: time:zones:us, time:zones:local -- filter with OFFSET para... 
rake tmp:clear       # Clear session, cache, and socket files from tmp/ (narrow w/ tmp:sessions:clear, tmp:cache:clear, tm... 
rake tmp:create       # Creates tmp directories for sessions, cache, sockets, and pids 

Parecería como si todos mis rake db tareas están desaparecidos.

+0

¿Qué hace bundle exec rake -T dice? – phoet

+0

Actualicé mi pregunta con la salida. Parece que faltan todas las tareas 'rake db'. –

+3

¿Hace un 'require 'rails/all'' en su application.rb o está cargando un subconjunto? –

Respuesta

14

Hay algo muy funky pasando con sus versiones de gemas. Si miras tu gemfile.lock está usando las versiones 3.2.rc2 de railties, activesupport y activemodel, pero las otras versiones están por todas partes (ar es 1.6, action mailer es 0.6.1, etc.).

no estoy seguro de cómo se metió en este estado, pero que iba a tratar ya sea bundle update o eliminar Gemfile.lock y ejecutando bundle install (en teoría esos 2 son equivalentes) y especificando la versión exacta de los carriles que desee (especialmente cuando busca una versión preliminar de los rieles.)

+0

Esto parece estar sucediendo porque no estoy especificando '3.2.0.rc2' explícitamente en mi Gemfile. Supuse que bastaba con poner 'gem rails' sería suficiente, pero supongo que no. ¿Podría ser esto un error con Rails? –

+0

Si es un error en algo, estaría en un paquete. Dicho esto, hablando estrictamente, el conjunto de gemas que se seleccionaron coinciden con su gemfile (posiblemente porque algunas de las versiones anteriores eran más relajadas con respecto a las versiones especificadas) –

+0

La eliminación de la instalación de Gemfile.lock + bundle funcionó perfectamente. Aclamaciones. –

5

Desde el comando rake db:migrate --trace, las tareas de rake no se cargan. , y no podría obtener el esquema de ruta correcto. y ejecuta rake -T localmente lista db:migrate como una de las tareas de rake? Si no, sus rieles están mal configurados ... bueno, no trabajé con los rieles 3.2.0rc2, pero busqué en Google y encontré algunos enlaces. Por favor, consulte los enlaces inferiores a este le ayudaría ..

Rake db:migrate error don't know how to build task

Don't know how to build rake db:migrate on Ubuntu natty

Problem running rake db:migrate

quiero saber cómo funcionó!

Gracias Frederick, Su publicación interesante ...

+1

Gracias, por esta respuesta. Funciona para mí. – gsoni

Cuestiones relacionadas