こんばんは、ころすけ(@wg_koro)です。
今日、Redmineの構築作業をしていたらわけのわからない現象に悩まされました。
「メール通知」の「テストメールを送信」を押すと
メール送信中にエラーが発生しました (cannot load such file — net/smtp)
へ??
環境
- Debian
- Redmine 1.4.4
- ruby 1.9.3p194
- rails 2.3.14
- サーバーはunicorn
試したこと
net/smtpってruby標準で入っているライブラリだし、なんでloadできないの??
とりあえず、 require ‘net/smtp’ を書いた適当なrubyファイルを実行してみる。問題無し。ちゃんと実行できる。
パスが通ってないとか?と思い、色々チェックするが問題なし。
何かのパッケージが足りないとか?・・・違うな。
えー何だこれ??
結局
config/environment.rb の中にある Rails::Initializer.run の中に
require ‘net/smtp’
と、一行書いてサーバー再起動したらOKになりました。
昔入れた1.2.xや2.0.xではこんな手順踏んだことなかったんだけどなぁ・・・。何だろう。
気になりますが、これ以上時間をかけてもしょうがないので一旦これでよしとします。うーん、微妙に気持ち悪い・・・(・ω・)
CentOSならそのままbundleしてRAILS_ENVぶちかませばうごいちゃったな・・メール
OSがいけないのか、自分のセットアップの仕方がまずいのかさてはて・・・。