MSBuild 输出目录

MSBuild output directory

我试图获得对 MSBuild 输出的绝对控制。如果我 运行:

msbuild project.msbuild

或:

msbuild project.msbuild /p:configuration=Debug

我会得到文件夹:

如果我运行:

msbuild project.msbuild /p:configuration=Release

我会得到文件夹:

我想要的输出目录结构如下:

我首先尝试了 OutputPath,但没有任何反应。然后我尝试了以下操作:

<OutDir>$(Platform)$(Configuration)\</OutDir>

现在我在指定的文件夹中获得了已编译的二进制文件,但由于某种原因,创建了旧的目录结构来包含目标文件。所以如果我 运行:

msbuild project.msbuild

我最后得到的是:

我想要同一个文件夹中的所有内容,我指定的文件夹,而不是 MSBuild 决定的默认文件夹。

目标文件存储在'Intermediate' 目录中。 通过指定 OutDir - 您可以指定二进制文件的位置。 要指定 .obj 文件的位置,您应该另外尝试指定 IntermediateOutputPath 到 .obj 文件的所需位置。

参见参考,例如:https://blogs.msdn.microsoft.com/kirillosenkov/2015/04/04/using-a-common-intermediate-and-output-directory-for-your-solution/