2016-04-22 20 views
0

任何想法,为什么MSBuild的总是我建立所有平台我UWP的解决方案,即使我指定只建立在ARM平台。这是我正在使用的命令行:的MSBuild总是建立所有平台,即使特定的一个提供

MSBuild.exe C:\MyApp\MyApp.sln /p:Configuration=Release /p:Platform=ARM 

我错过了什么或做错了什么?

谢谢。

更新 - 1:

我也试着指定x86架构平台,但它仍然建立所有平台。

+0

如果你要回答这个问题,请留下一个解释为什么!我不太明白我还能提供什么,但如果您觉得应该提供某些东西,请告诉我,我会提供。 – Thierry

回答

0

花费数小时试图弄清楚这个问题后,我终于想通了,什么是错的,部分至少好!

如前所述,上面并没有如预期工作,除非我第一次通过.NET IDE创建一个包,并只选择单一的平台。一旦我这样做了,上面的命令行就会构建命令行中指定的相关平台!

我只是试图再次创造通过.NET IDE和一个包重新选择的所有平台,并再次打电话给我原来的命令行,并建立所有的平台,而不是在命令行中指定的一个。解决方案文件中显然存在一些导致此问题的内容,但我个人认为这种行为是错误的并且是一个错误。

以下命令行似乎工作无关的什么通过.NET IDE被选中的:

要只在Release模式构建一个包ARM:

msbuild "c:\myapp\myapp.sln" /p:configuration=release;platform=ARM; 
AppxBundle=Always;AppxBundlePlatforms="ARM" 

要只构建一个软件包对于调试模式下的x86:

msbuild "c:\myapp\myapp.sln" /p:configuration=debug;platform=x86; 
AppxBundle=Always;AppxBundlePlatforms="x86" 

尽管上述工作与.NET IDE中选择的内容无关,但我还没有弄清楚如何构建所有平台。

我也将调查的原始命令行的问题,并通过.NET IDE选择该链接,如果我发现什么导致了它我会更新我的答案。

希望这会有所帮助。

相关问题