AzureWebJob で System.IO.FileNotFoundException が出る件

現象

  • WebJob.exe
  • MyAssembly.dll
  • Newtonsoft.Json.dll

WebJob が MyAssembly.dll を参照し、
MyAssembly.dll が Newtonsoft.Json.dll を参照しているケース。


この状態で、Git デプロイや VisualStudio で発行したとき、WebJob.exe で NewtonSoft.Json.dll に対して System.IO.FileNotFoundException が発生する。


回避策

以下のコマンドを実行する

Install-Package Microsoft.Web.WebJobs.Publish -Version 1.0.2 -ProjectName WebJob

WebJob を作成すると、Microsoft.Web.WebJobs.Publish の 1.0.0 がインストールされる。(VS2013)
このバージョンにバグがあるのか、バージョンを上げることで問題が回避できた。


ググると大体の回答が、「ちゃんと zip にまとめて上げろ」ってなってて、これじゃない感が大きかったがたまたま解決できたので Web に放っておく。


ASP.NET MVC5実践プログラミング

ASP.NET MVC5実践プログラミング