私はこれに関するすべての SO 問題を調べましたが、喜びはありませんでした。
Mountain Lion にアップグレードしてから、次のエラーが表示されます。
Validation failed: Photo /var/folders/92/qp3ppxv92tsglvj03ndp0t6m0000gn/T/stream20121007-36927-1dzwbgk-0.jpeg is not recognized by the 'identify' command.
そしてログに
Command :: identify -format %wx%h :file
[paperclip] An error was received while processing: # <Paperclip::NotIdentifiedByImageMagickError: /var/folders/92/qp3ppxv92tsglvj03ndp0t6m0000gn/T/stream20121007-36927-1dzwbgk-0.jpeg is not recognized by the 'identify' command.>
私が使用しているのは、依存関係をインストールするための Ruby 1.8.7、Rails 3.1.3、OSX Mountain Lion、Homebrew です。
私が追加しました
#development.rb
Paperclip.options[:command_path] = "/usr/local/bin"
自作を完全に削除して再インストールしました
#brew doctor
Your system is raring to brew.
#brew list
ack gettext imagemagick libffi libpng little-cms pkg-config readline
cmake git jasper liblqr libtiff mysql postgresql xz
freetype glib jpeg libmagic libyaml ossp-uuid qt
別の SO ケースの推奨で liblqr をインストールしたところ、多くの依存関係が発生しました。
コマンドラインから識別が機能しているようです
#identify /var/folders/92/qp3ppxv92tsglvj03ndp0t6m0000gn/T/stream20121007-36927-1dzwbgk-0.jpeg
/var/folders/92/qp3ppxv92tsglvj03ndp0t6m0000gn/T/stream20121007-36927-1dzwbgk-0.jpeg JPEG 259x195 259x195+0+0 8-bit DirectClass 11KB 0.000u 0:00.000
#identify -format %wx%h /var/folders/92/qp3ppxv92tsglvj03ndp0t6m0000gn/T/stream20121007-36927-1dzwbgk-0.jpeg
259x195
識別はコンソールから動作するようです
Loading development environment (Rails 3.1.3)
1.8.7 :001 > system("identify -format %wx%h /var/folders/92/qp3ppxv92tsglvj03ndp0t6m0000gn/T/stream20121007-36927-1dzwbgk-0.jpeg")
259x195
=> true
rmagick をインストールしましたが、以前は使用したことがありませんでした。宝石:
*** LOCAL GEMS ***
paperclip (2.7.1)
rmagick (2.13.1)
私は提案されたすべてを試しましたが、今では完全にアイデアがありません。問題を特定するためにもう少し深く掘り下げる方法について何か提案はありますか? 原因は、Paperclip によって引き起こされた jpeg または PNG ファイルのサイズ変更です (他は試していません)。
has_attached_file :photo,
:styles => {:thumb => "100x100", :medium => "x140", :mediumplus => "x210",:large => "960x378" },
:storage => :s3,
:s3_credentials => {
:access_key_id => ENV['S3_KEY'],
:secret_access_key => ENV['S3_SECRET']
},
:s3_protocol => "https",
:bucket => ENV['S3_BUCKET'],
:path => ":attachment/:id/:style.:extension"