代码之家  ›  专栏  ›  技术社区  ›  nmit026

Azure网站部署失败-在同一依赖程序集的不同版本之间发现冲突

  •  0
  • nmit026  · 技术社区  · 7 年前

    我的azure网站部署失败。在我的本地计算机上一切正常:当visualstudio的输出窗口中将日志详细设置为detailed时,我看不到任何问题或冲突。

    但是,当尝试部署到Azure时,我不知道如何查看日志并修复Kudu中的以下错误:

    命令:“D:\home\site\deployments\tools\部署.cmd" 处理.NET Web应用程序部署。 中列出的所有程序包packages.config文件已安装。 我的项目。蚕豆->D:\主页\网站\存储库\我的项目。蚕豆\箱子\释放\MyProject.Broadbean.dll 我的项目域->D:\主页\网站\存储库\我的项目域\箱子\释放\我的项目.Domain.dll 我的项目。曼德尔->D:\home\site\repository\Mandrill\bin\Release\我的项目.Mandrill.dll D: \程序文件(x86)\MSBuild\14.0\bin\Microsoft.Common.CurrentVersion.targets(1819,5):警告MSB3277:发现同一依赖程序集的不同版本之间存在无法解决的冲突。当log verbosity设置为detailed时,这些引用冲突将列在生成日志中。[D:\主页\网站\存储库\我的项目.WebUI\我的项目.WebUI.csproj] D: \程序文件(x86)\MSBuild\Microsoft\VisualStudio\v14.0\TypeScript\Microsoft.TypeScript.targets(242,5):警告:未指定编译器日志,“Clean”将不起作用。[D:\主页\网站\存储库\我的项目.WebUI\我的项目.WebUI.csproj] CSC:错误CS1703:已导入多个具有等效标识的程序集:“D:\home\site\repository\packages”\System.Xml.ReaderWriter.4.3.1\lib\net46\System.Xml.ReaderWriter.dll'和'D:\程序文件(x86)\Reference Assemblies\Microsoft\框架.NETFramework\v4.6.1\立面\System.Xml.ReaderWriter.dll。删除其中一个重复引用。[D:\主页\网站\存储库\我的项目.WebUI\我的项目.WebUI.csproj] CSC:错误CS1703:已导入多个具有等效标识的程序集:“D:\home\site\repository\packages”\System.ComponentModel.Annotations.4.5.0\lib\net461\System.ComponentModel.Annotations.dll'和'D:\程序文件(x86)\Reference Assemblies\Microsoft\框架.NETFramework\v4.6.1\立面\System.ComponentModel.Annotations.dll。删除其中一个重复引用。[D:\主页\网站\存储库\我的项目.WebUI\我的项目.WebUI.csproj] 失败的exitCode=1,command=“D:\Program Files(x86)\MSBuild\14.0\Bin\MSBuild.exe“”D:\主页\站点\存储库\我的项目.WebUI\我的项目.WebUI.csproj“/nologo/详细程度:m/t:Build/t:pipelinePreDeployCopyAllFilesToOneFolder/p:\PackageTempDir=“D:\local\Temp\8d69b9dee0afc5a”;AutoParameterizationWebConfigConnectionStrings=false;Configuration=Release;UseSharedCompilation=false/p:SolutionDir=“D:\home\site\repository.\” 网站部署期间出错。

    如何在Kudu或Azure网站环境中查看此构建日志并修复这些错误?我显然漏掉了一些东西。背景是我更新了很多nuget包,现在站点部署中断了,我不知道如何修复它。

    1 回复  |  直到 7 年前
        1
  •  0
  •   Mohit Verma    7 年前

    请调试您部署.cmd在您认为可能导致构建失败的每个步骤中使用日志。 似乎由于项目中的nuget update,同一依赖程序集的不同版本之间存在冲突。请查看已升级的程序集,并检查它们在项目中的兼容性。

    我相信,如果您有权访问构建代理并登录到虚拟机并尝试调试cmd文件,则必须使用某个生成代理运行构建。

    另外,请在代理虚拟机中复制并安装与本地环境相同的环境,大多数情况下,这是生成失败的原因。

    希望有帮助。

        2
  •  0
  •   nmit026    7 年前

    修复“已导入多个具有等效标识的程序集”。删除一个重复的引用。“错误,我删除了那些程序集的引用。

    这让我可以部署。但是在部署时,由于不同程序集之间的冲突,我得到了错误屏幕。

        3
  •  0
  •   Gaurav Moolani    7 年前

    它想说的是什么

    .net框架本身有System.Xml.ReaderWriter.dll,因此您不需要单独添加它。 请删除的任何引用System.Xml.ReaderWriter.dll。 同样,您必须对其他程序集执行此操作。