【问题标题】:Visual Studio - aspnet_merge.exe error when publishingVisual Studio - 发布时出现 aspnet_merge.exe 错误
【发布时间】:2023-04-05 19:49:05
【问题描述】:

我在 VS 2015、2017 和 2019 年遇到过这个问题,所以我相信这不是我的设置所特有的。

aspnet_merge(0,0): Error occurred: An error occurred when merging assemblies: Object reference not set to an instance of an object

这发生在以下运行之后:

C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.8 Tools\aspnet_merge.exe (project location)\TempPackageBuildDir\obj\Debug\AspnetCompileMerge\TempBuildDir -o (name of assembly) -copyattrs (repository location)\..\..\TempPackageBuildDir\obj\Debug\AssemblyInfo\AssemblyInfo.dll -a -debug

我可以在另一台机器上运行这个完全相同的命令,并且它运行没有问题。我之前可以通过将 website.publishproj 中的输出目录显式设置为

来解决此问题
<PropertyGroup>
    <OutputPath>$(MSBuildProjectDirectory)\..\..\TempPackageBuildDir\</OutputPath>
</PropertyGroup>

但几天后问题又出现了。我的机器上专门缓存了一些不好的东西,我没有足够的知识知道它是什么。

任何见解将不胜感激,

【问题讨论】:

  • 嗨,关于这个问题的任何更新?请检查它是否可以帮助您处理您的问题。如果有帮助,请不要忘记accept it。如果没有,请随时告诉我们:)

标签: visual-studio msbuild publishing aspnet-merge


【解决方案1】:

其实,问题与你的项目和VS环境有关。请尝试以下步骤:

1) clean all nuget caches 或直接删除 C:\Users\xxx\.nuget\packages

关闭、删除.vs隐藏文件夹、binobj文件夹。

还有,删除C:\Users\&lt;user&gt;\AppData\Local\Temp\Temporary ASP.NET Files下的所有文件

然后,重启VS,在Tools-->Nuget Package Manager-->Package Manager Console下运行update-package -reinstall

如果您引用任何程序集 dll,请先将其删除,然后再添加。

确保所有 Merge 的 DLLS 没有损坏。

2)重置工具下的所有vs设置-->导入和导出设置-->重置所有设置强>

3) 禁用任何第三方安装的扩展程序以检查是否有导致该问题的原因。

4) repair vs 来自 vs_installer

此外check whether you have theseweb.config 文件上。如果有,请删除它们。

【讨论】:

    猜你喜欢
    • 2010-09-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-17
    • 2018-02-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多