C# Fody在错误的目录中查找中间文件

C# Fody在错误的目录中查找中间文件,c#,msbuild,fody,C#,Msbuild,Fody,为了能够发布单个.exe,我已经将/Fody包添加到我的C#项目中。我以前使用过此软件包,但现在收到以下错误消息: MSBUILD:错误:Fody:AssemblyPath “C:\Projects\X\MSBuild\obj\x86\Debug\X.exe”不存在。如果你 尚未完成生成,您可以忽略此错误。 完成了Fody 4ms 奇怪的是,中介X.exe在这里正确构建: C:\Projects\X\src\X\obj\x86\Debug\X.exe 我正在做的项目相当大。因此,我们使用两个MS

为了能够发布单个.exe,我已经将/Fody包添加到我的C#项目中。我以前使用过此软件包,但现在收到以下错误消息:

MSBUILD:错误:Fody:AssemblyPath “C:\Projects\X\MSBuild\obj\x86\Debug\X.exe”不存在。如果你 尚未完成生成,您可以忽略此错误。 完成了Fody 4ms

奇怪的是,中介X.exe在这里正确构建:

C:\Projects\X\src\X\obj\x86\Debug\X.exe

我正在做的项目相当大。因此,我们使用两个MSBuild props文件将所有内容放在corect输出目录中。使用MSBuild从命令行生成和从Visual Studio中生成都可以正常工作。所以我认为我们的道具文件是正确的。为什么福迪在这么奇怪的地方寻找中介

Fody可能使用的哪个MSBuild变量控制此中间路径?

查看引发异常的变量,我看到一个非常简单的文件。Exists check。它都源于ProjectDirectory(在WeavingTask中),您可以检查使用该值的位置


因为我没有用过福迪,我不能告诉你更多。我会特别注意配置文件,因为我看不到任何地方正在构建ProjectDirectory,而只是从某个地方注入。

文件夹或文件权限?我不这么认为。MSBuild可以访问所有这些文件和文件夹(它创建了它们),而Fody只是MSBuild执行的一个组件。谢谢!我没有想到要看源代码。不知何故,福迪使用了一个非常奇怪的obj目录。我修改了构建脚本,使obj目录恢复正常,从而解决了这个问题。