我收到的是“一个项目不能超过一个AplicationXaml项目”

时间:2018-12-10 01:21:56

标签: c# uwp-xaml

我有一个 UWP 项目,当我尝试为 ARM 构建它时,它的构建很好,但是,当我为 x86 构建它时,或 x64 我正在 “一个项目不能有多个ApplicationXaml项” 。我试图清理解决方案并再次重建,但错误无法消除。我也尝试过更改构建操作并再次进行重建,但到目前为止还没有运气。任何想法?我正在使用Visual Studio Enterprise 2017。

4 个答案:

答案 0 :(得分:1)

作为magicandre1981,这是VS 2017错误。我不必遵循他提到的所有步骤。我刚刚清理了项目,它对我有用。很奇怪。

答案 1 :(得分:0)

该错误是由您具有多个Application XAML项目引起的。

要解决此问题,您可以使用关键字“ 应用程序”搜索项目,然后删除重复的XAML项目。而且,如果class(Application)后面的代码也是重复的,则也可以删除它。

答案 2 :(得分:0)

这是Visual Studio 2017的一个错误,它是also reported to Microsoft,我也时不时地受苦。

有一些步骤可以“修复”它:

  1. 每次运行应用程序前都要清洁解决方案
  2. 删除ApplicationDefinition

enter image description here

并重新添加。

  1. 编辑UWP.csproj(删除某些部分,保存proj并忽略重新加载,现在重新添加删除的部分,保存并重新加载项目)。

现在尝试运行该应用程序。

答案 3 :(得分:0)

这是在Microsoft和Git页面以及此SO页面上发布的可能解决方案的摘要。有些解决方案比其他解决方案更快/更简单,因此我从最简单的解决方案到更复杂的修复程序都订购了可能的解决方案,并为VS新手提供了一些更详细的说明。

根据git page for this issue,Microsoft员工确认这是VS错误。它已经存在大约3年了,但是不幸的是,截至2020年,这个问题还没有得到解决。

可能的解决方案:

  1. 清洁。您可以按项目或解决方案,或两者同时进行。清理项目:右键单击项目> clean。要清洁溶液,请选择构建>清洁溶液,或右键单击解决方案>清洁溶液。现在,尝试再次构建您的解决方案。 每次尝试下面列出的潜在解决方案时,清洁它也是一个不错的主意
  2. 卸载并重新加载该项目。您可以通过右键单击项目并选择“卸载项目”来完成此操作。请稍等一下,然后右键单击并选择“重新加载项目”。
  3. 重建解决方案(而不是构建)。
  4. 检查您的App.xaml定义。如果您具有跨平台解决方案,则您的主项目/共享代码项目将具有App.xaml文件。打开该文件的属性(右键单击> properties)。构建操作应设置为嵌入式资源
    embedded resource
    您的UWP应用还将包含一个App.xaml文件。 UWP的App.xaml的构建操作应设置为应用程序定义
    application definition
  5. 如果这些正确无误,请删除定义(将构建操作设置为无)然后将其重新设置为正确的设置。

  6. 编辑UWP.csproj (删除某些部分,保存proj并忽略重新加载,现在重新添加删除的部分,保存并重新加载项目)。