MSBuild:为子生成指定平台时出现问题
在构建项目时是否可以指定目标平台(x64、x86) 我有一个构建任务,如下所示:MSBuild:为子生成指定平台时出现问题,msbuild,Msbuild,在构建项目时是否可以指定目标平台(x64、x86) 我有一个构建任务,如下所示: <MSBuild Projects="%(AgentProjectFiles.FullPath)" Properties="Architecture=x86;Configuration=$(Configuration);Optimize=$(Optimize);Platform=$(Platform);OutputPath=$(OutputDirectory)\Agent\;ReferencePath=$(R
<MSBuild Projects="%(AgentProjectFiles.FullPath)" Properties="Architecture=x86;Configuration=$(Configuration);Optimize=$(Optimize);Platform=$(Platform);OutputPath=$(OutputDirectory)\Agent\;ReferencePath=$(ReferencePath);DebugSymbols=$(DebugSymbols);DebugType=none;" />
正如你可能知道的,我已经把我在网上看到的所有可能的东西都放到Properties属性中,希望它能起作用。您会注意到,对于架构属性,我已显式地将其设置为x86。$(平台)也设置为x86。我尝试了许多排列,但没有成功
不幸的是,无论这些属性中放入什么,我的类库都是x86,但我的可执行文件是x64
我认为问题可能在于项目文件本身中指定的生成属性导致MSBuild忽略我从MSBuild传递的那些属性,但在将它们更改为x86之后,我仍然存在相同的问题
有什么想法吗?在AgentProjectFiles项的声明中,您是否定义了属性元数据。那么它看起来像:
<ItemGroup>
<AgentProjectFiles Include="something.proj">
<Properties>SOME VALUES HERE</Properties>
</AgentProjectFiles>
</ItemGroup>
都被忽略了。我在博客上写过这件事
赛义德·易卜拉欣·哈希米
我的书:谢谢!!!(请原谅,我的头撞到墙上已经有几个小时了。)我改变了我的项目组来定义上面的属性,我的程序集现在是为正确的平台创建的。我真的不相信这是事实。谢谢你,赛义德。