![](/img/trans.png)
[英]ClientBuildManager.PrecompileApplication in Azure not using pre-compiled version
[英]Build Error with pre-compiled Azure Function Library
最近,我使用Visual Studio Tools for Azure Functions將使用 C# 腳本 ( *.csx
) 的 Azure 函數轉換為預*.csx
類庫。 它在 Visual Studio 2017 中成功構建(以及運行和調試)。
我想通過我們的 CI 流程構建這個 AF 庫。 但是,當我在本地運行命令dotnet build
,它失敗並顯示以下錯誤:
C:\\Users\\ray\\.nuget\\packages\\microsoft.net.sdk.functions\\1.0.2\\build\\netstandard1.0\\Microsoft.NET.Sdk.Functions.Build.targets(31,5):錯誤:可以不加載文件或程序集“Microsoft.Azure.WebJobs.Host,版本=2.1.0.0,Culture=neutral,PublicKeyToken=31bf3856ad364e35”。 系統找不到指定的文件。
同樣的錯誤也發生在我們的 CI 構建中。
不確定為什么會發生此錯誤以及如何解決它。 它是 dotnet CLI 的版本嗎(我使用的是 v1.1)? 是別的嗎?
更新 2018-01-08
根據@theGRS https://stackoverflow.com/a/48156446/621827的新答案,此問題已解決。
上一個答案
這是我發現的。
dotnet msbuild
使用Microsoft.NET.Sdk.Functions .NETStandard 1.5
庫,如果您查看NuGet上的依賴項,它不使用Microsoft.Azure.WebJobs
但是,如果您使用 Visual Studio 2017 msbuild
,它將使用.NETFramework 4.6
版本的庫,其中包括Microsoft.Azure.WebJobs
。
我的建議是現在使用 MSBuild。
我在運行dotnet build
時也遇到了同樣的問題,但在將Microsoft.NET.Sdk.Functions
從 1.0.2 更新到 1.0.7 后不再有這個問題。
在 Nuget 包管理器中更新到此包的最新版本,您應該能夠再次運行dotnet build
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.