2010-12-22 8 views
6

ich den Einsatz einer railsappRMagick nicht ImageMagick auf dem Server finden

RMagick Ubuntu ist über „Bündel installieren vendor“ installiert. es installiert, und die App läuft - aber dieser Fehler ausgelöst wird:

source_image = Magick::Image.read("#{Rails.root}/public/system/assets/#{self.id}/original/#{self.asset_file_name}").first 

ich getan habe folgendes:

  • uninstsalled, dann

    uninitialized constant Image::Magick 
    

    , wenn zu lesen versuchen, neu installiert, ImageMagick auf dem Server

  • deinstalliert, dann neu installiert, rmagick auf dem Server
  • deinstalliert, dann wieder installiert, RMagick über bundler
  • Lauf nur mit dem Bündler RMagick
  • Lauf mit dem bundler und System installiert RMagick
  • proxied nginx auf Schienen-Server, den Fehler zu gewährleisten installiert ist nicht im Zusammenhang mit Passagiere

ich bin ein bisschen verrückt zu versuchen, gehen, um herauszufinden, was kann ich sonst noch imagemagick

+0

Können Sie uns bitte den StackTrace von diesem Fehler zeigen? –

+0

Danke, dass du Ryan fragst. Es stellte sich heraus, dass die Person, die die App ursprünglich bereitgestellt hatte, sie nicht in der Gemdatei konfigurierte, da sie in vielen Umgebungen funktioniert. –

Antwort

39

nach stundenlangen Kämpfen und neu zu kompilieren imagemagick und RMagick unter verschiedenen Kombinationen tun, um RMagick zu sehen, lucked ich auf einer 1 Zeile fix out

Gemfile

- gem 'rmagick' 
+ gem 'rmagick', :require => 'RMagick' 

Bündler erfordert den Edelstein Name standardmäßig

heißt :require => 'rmagick'.

Aber die Datei enthalten ist eigentlich "RMagick.rb". Bei Dateisystemen, bei denen die Groß-/Kleinschreibung nicht berücksichtigt wird, wie OS X, funktioniert dies, aber für Groß- und Kleinschreibung, Dateisysteme, wie Ubuntu, wird die Datei nicht gefunden.

Dies kann einer der Gründe sein, warum der Fehler nicht auf dem Dev-System erzeugt werden kann, auch nicht im Produktionsmodus.

+4

Sparte mir viel Zeit. Danke. – Ben

+0

Danke, können Sie erklären, warum dies das Problem löst? – Joe

+0

Fanden Sie diesen hilfreichen kleinen Tipp am Thanksgiving-Tag. DANKE. –

0

Doing a gem install rmagick als privilegierter Benutzer das Problem für mich behoben.

Nicht wirklich eine hilfreiche Lösung, aber ich denke, in meinem Fall hatte ich RMagick eigentlich nicht richtig installiert, obwohl Bundler dachte, ich hätte es getan.

Verwandte Themen