クラウドサービスを新しい「Azure SDK for .NET 2.5.1」に正常にアップグレードした後、パッケージ化/公開しようとすると次のエラーが発生しました。
ファイルまたはアセンブリ「Microsoft.WindowsAzure.Packaging、Version = 1.0.0.0、Culture = neutral、PublicKeyToken = 31bf3856ad364e35」またはその依存関係の1つをロードできませんでした。システムは、指定されたファイルを見つけることができません。 C:\ Program Files(x86)\ MSBuild\Microsoft\VisualStudio\v12.0\Windows Azure Tools\2.5\Microsoft.WindowsAzure.targets
「Microsoft.WindowsAzure.targets」設定ファイルの関連行は29です。これは明らかにCSPackに関連しています。
<CSPack
ServiceDefinitionFile="@(TargetServiceDefinition)"
Output="@(PublishServicePackage)"
PackRoles="@(Roles)"
SiteMapping="@(SiteMapping)"
RoleProperties="@(RoleProperties)"
ImportedModules="@(ImportedModules)"
CopyOnly="false"
>
</CSPack>
そこで、新しいプロジェクトで新しいAzure Cloudサービスを作成し、アップグレードで問題が発生したかどうかを確認しました。残念ながら問題は解決しません。
回避策はありますか、v2.4にロールバックする必要がありますか(かなりの痛みが生じます)
VS 2013 update 4で実行しています。
皆さんごめんなさいこの原因を調査しています。一部の環境では、これらの2つのバイナリが正しくインストールされないインストーラーの動作がおかしいようです。
2.5.1 Azure Authoring Toolsを削除して再インストールすると、不足しているバイナリが正しくインストールされることがわかりました。したがって、この問題が発生した場合は、Programs and FeaturesからAuthoring Tools v2.5.1を削除し、Web Platform Installerまたは直接ダウンロードリンクから再インストールしてください。
ご迷惑をおかけして申し訳ございません。調査を続けます。
必要なdllをローカルで検索し、Azure .Net SDKのほとんどすべての以前のバージョンでそれを見つけました(v2.0以降)。
そのため、これを修正するには、SDKの以前のバージョンv2.4から次のdllをv2.5の同様の場所にコピーする必要があります。
SDKインストールパス。
コピーするDLL(欠落):
これに対するより良い答えがあるかもしれないので、私はこれをまだ答えとしてマークしません。