Das Einwickeln des Bootstrap-Sass-Edelsteins in einen anderen Edelstein führt dazu, dass Asset-Manifeste brechen.

Ich versuche, den Bootstrap-Sass-Edelstein in einen anderen Edelstein zu wickeln (nennen wir ihn meine-Engine). Unterwegs baue ich eine kleine Rails-Anwendung, um die Dinge zu testen. Als ersten Schritt wollte ich sicherstellen, dass bootstrap-sass direkt in meiner Rails-Anwendung funktioniert. Die Gemfile for the Rails-App sieht folgendermaßen aus:

gem 'bootstrap-sass', '3.3.1.0'
gem 'my-engine, path: "~/dev/my-engine"

Dies funktioniert gut. Die Bootstrap-Assets werden in meine Rails-Anwendung geladen und alles sieht gut aus. Jetzt möchte ich bootstrap-sass aus meiner Rails-App herausnehmen und über my-engine laden lassen. Meine Rails-Anwendung Gemfile sieht nun folgendermaßen aus:

gem 'my-engine, path: "~/dev/my-engine"

Die .gemspec für my-engine hat:

spec.add_runtime_dependency 'bootstrap-sass', '3.3.1.0'

Ich kann das Juwel von my-engine ohne Probleme neu bündeln. Ich kann die Rails-Anwendung ohne Probleme neu bündeln. Wenn ich jedoch die Seite der Rails-App aktualisiere, wird die folgende Fehlermeldung angezeigt:

File to import not found or unreadable: bootstrap-sprockets.

Diese Unterbrechung tritt auf, wenn Sprockets versucht, die Datei application.css zu erstellen. Manchmal vergeht dies und es wird eine andere Fehlermeldung angezeigt, wenn die Javascript-Datei bootstrap.js fehlt, wenn die Datei application.js erstellt wird.

Warum passiert dies? Ich frage mich, ob es etwas mit der Tatsache zu tun hat, dass ich die Edelsteine lokal entwickle und sie nicht veröffentlicht habe, obwohl ich nicht sicher bin, warum sich das auf den veröffentlichten Bootstrap-Sass auswirken würde. Ich verwende Bundler 1.5.3.

Antworten auf die Frage(4)

Ihre Antwort auf die Frage