【问题标题】:Some assemblies not being included when deploying Azure webjobs from Visual Studio 2013从 Visual Studio 2013 部署 Azure webjobs 时不包括某些程序集
【发布时间】:2014-09-20 16:03:04
【问题描述】:

我有一个 Visual Studio 2013 类库项目,目录结构如下:

\MyClassLibraryProject
    \ExternalLibraries
        3rdPartyLib.dll
    \bin
       \Debug
       \Release
    etc.

在 ExternalLibraries 内部,我复制了一些第 3 方程序集,然后我从项目中引用了这些程序集(复制本地 = true)。我编译了项目,在我的 Release 目录中我当然可以看到 MyClassLibraryProject.dll 和 3rdPartyLib.dll 等第 3 方 DLL。到目前为止很好。

然后我有另一个项目(控制台应用程序 - Azure webjob),我从中添加了对 \MyClassLibraryProject\bin\Release\MyClassLibraryProject.dll 的引用(复制本地 = true)。它看起来像这样:

\MyWebjob
   \bin
       \Debug
           MyWebJob.exe
           MyClassLibraryProject.dll
           3rdPartyLib.dll

如您所见,当我添加对 MyClassLibraryProject.dll 的引用(使用 Copy local = true)时,它还复制了它的依赖程序集 3rdPartyLib.dll。到目前为止还不错。

但是,当将 webjob 项目发布到 Azure(右键单击项目、发布...)时,3rdPartyLib.dll 未部署。结果,webjobs 仪表板抱怨找不到它,当然 webjob 没有执行。

这是用户错误还是其他原因?

【问题讨论】:

    标签: .net visual-studio azure visual-studio-2013 azure-webjobs


    【解决方案1】:

    这是个问题。您需要通过 nuget 手动部署或添加依赖项到 webjob。

    看看这个 Relevant dependencies (DLL) not being copied when deploying using Visual Studio 2013

    【讨论】:

    • > 或者以任何其他方式添加它们,例如通过直接引用和复制本地,对吗?换句话说,我认为 nuget 不是出于某种特殊原因而特别需要的?
    • 此问题已在我们的下一次更新中得到修复。很快就出来了。
    • 我不确定什么时候应该发布“下一次更新”,但这仍然是个问题。我现在正在经历。
    • @Ozzy 这还没有修复。我可以确认我的问题仍然存在。
    • @lopezbertoni 我能够通过将 proto-buf dll 放在依赖文件夹中来解决它,包括在我的 git repo(用于部署)中的那个 dll,并从依赖项中添加对该 dll 的引用包含在 repo 中的文件夹。 (这样我就不必放弃从 git 部署的功能,这是我使用 azure 的主要原因。)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-23
    相关资源
    最近更新 更多