¿Por qué Rails no se inicia con "Se esperaba encontrar un archivo de manifiesto en` app / assets / config / manifest.js` (Sprockets :: Railtie :: ManifestNeededError) "?


36

Después de que bundle updatemi aplicación Rails no se inicie con:

Expected to find a manifest file in `app/assets/config/manifest.js` (Sprockets::Railtie::ManifestNeededError)

Respuestas:


44

Han cambiado las cosas con la última versión de piñones. Este error aparece porque no tiene un manifest.jscreado. Debe crear uno y agregar algunas líneas para asegurarse de que todo funcione.

Pasos sencillos para resolver el problema:

  1. Cree el archivo manifest.js

    $ mkdir -p app / assets / config

    $ touch app / assets / config / manifest.js

  2. Luego copie y pegue lo siguiente en el archivo manifest.js que acaba de crear:

    //= link_tree ../images
    //= link_directory ../javascripts .js
    //= link_directory ../stylesheets .css
  3. Si tiene una matriz de precompilación en su app/config/carpeta (consulte a continuación un ejemplo), por ejemplo app/config/production.rb, tal vez debería moverlos a su carpetamanifest.js

    config.assets.precompile = ["admin.js", "admin.css"]

Fuente: Gracias al blog de Richard Schneeman. Consulte aquí para obtener más información.


A pesar de que tengo el archivo que dice Stills, que se espera encontrar un archivo de manifiesto enapp/assets/config/manifest.js
— Chris Habgood

@ChrisHabgood es muy difícil de depurar sin más contexto ... ¿quizás activar una aplicación mínima para demostrar el problema y publicar para desbordar la pila?
— BKSpurgeon el

16

Recientemente se lanzó una nueva versión principal de piñones que no es compatible con la versión anterior.

Realice los pasos necesarios para actualizar o ancle a la versión 3.x en Gemfile

gem 'sprockets', '~>3.0'


Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.