msbuild - 无法将 "MSBuild.ILMerge.Task"与 PackageReference 一起使用

标签 msbuild ilmerge packagereference

使用通过 packagereference 引用的 MSBuild.ILMerge.Task 时,出现以下错误:

error MSB4018: The "MSBuild.ILMerge.Task" task failed unexpectedly.
error MSB4018: System.IO.FileNotFoundException: Cannot find ILMerge 
executable.
error MSB4018:    at MSBuild.ILMerge.Task.LoadILMerge()
error MSB4018:    at MSBuild.ILMerge.Task.Execute()
error MSB4018:    at error MSB4018:    at Microsoft.Build.BackEnd.TaskBuilder.<ExecuteInstantiatedTask>d__26.MoveNext()

这是因为 MSBuild.ILMerge.Task.dll 在其包位置找不到 ILMerge 可执行文件。我猜主要原因可能是package.config和PackageReference之间的文件夹结构不同。

还有其他人遇到过这个问题吗?提前感谢任何帮助

最佳答案

您可以尝试将 ILMerge 降级到 2.14.1208。

这为我解决了这个问题。

https://github.com/emerbrito/ILMerge-MSBuild-Task/issues/13

关于msbuild - 无法将 "MSBuild.ILMerge.Task"与 PackageReference 一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51712578/

相关文章:

.net - 跳过规则不起作用

c# - TFS 2012 Team Build 获取解决方案配置

linux - 如何在 MSBuild 中获取当前操作系统?

c# - 使用 ILMerge 时无效 System.Threading.Monitor.Enter 错误

c# - ILMerge:如何配置对应的app.config

c# - update-package 运行时约束 PackageReference 升级版本

asp.net - 如何使用某些发布配置文件从命令行发布站点?

.net - 复杂消息和大众运输反序列化

.net - 如何使用MSBuildWorkspace获取引用的nuget包?