xamarin应用程序不再构建

时间:2016-09-19 21:10:47

标签: c# visual-studio xamarin visual-studio-2015

我最近使用最新的补丁版更新了我的VS 2015,从那时起我收到了这个错误:

  

正在构建的项目“MSIL”的处理器体系结构与参考“C:\ WINDOWS \ Microsoft.NET \ Framework \ v4.0.30319 \ mscorlib.dll”,“x86”的处理器体系结构之间存在不匹配。这种不匹配可能会导致运行时故障。请考虑通过Configuration Manager更改项目的目标处理器体系结构,以便在项目和引用之间调整处理器体系结构,或者使用与项目的目标处理器体系结构相匹配的处理器体系结构依赖于引用。

输出:

import java.io.File;
import java.util.Scanner;

public class Excercise3 {

  public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    System.out.println("Enter the file name: ");
    String filename = sc.next();
    File myFile = new File(filename);

    String myString;
    float incumbant = 0;
    float secondPlace = 0;
    float counter = 0;

    try {

      Scanner myScanner = new Scanner(myFile);
      myScanner.nextLine();

      //while(myScanner.hasNextFloat())
      //{
      counter = myScanner.nextFloat();
      if (counter == 47.83) {
        System.out.println("The top qualifier is: " + counter);
      } else {
        counter++;
      }
      //System.out.println(myString);

      //  }

      myScanner.close();
      sc.close();
    } catch (Exception e) {
      System.out.println("File not found.");
    }
  }
}

唯一的其他条目是警告谁应该是原因。 奇怪的是,发生错误的项目没有引用mscorlib。

错误发生在PCL共享库部件中,该部件由特定于平台的项目引用。因此,这些也无法建立。

我目前的构建配置如下:

enter image description here

特殊的共享项目:

enter image description here

存储库:https://github.com/NPadrutt/MoneyFox.Windows/tree/AndroidBackgroundService

我试图修复vs,但这没有改变什么,重新安装它完全。 有趣的是,我可以在Windows 7上构建它(但是却得到运行时错误)。 此外,我不能再建立我的主分支,几天前可以构建。 这里有什么问题!?

编辑:我创建了一个新的可移植类库并卸载了所有其他项目..我也得到了同样的错误,当我创建一个只有一个可移植类库的新项目时也是如此。所以我目前的装置似乎有些不对劲......

2 个答案:

答案 0 :(得分:1)

我找到了解决问题的方法。似乎某些.net配置文件已损坏。但他们没有通过重新安装或修复VS来修复。因此,我删除了路径C:\ Program Files(x86)\ Reference Assemblies \ Microsoft \ Framework.NETPortable

下的文件和文件夹。

然后我修复了VS,它又恢复了工作......

答案 1 :(得分:0)

我不认为这与将最新补丁应用于Visual Studio 2015有关。

当我们有一个为x86构建的项目引用AnyCPU的另一个构建时,我们会看到此警告。这可以在“项目属性”页面中修复(右键单击项目,然后单击“属性”)。在Build tap中,您可以设置 Platform target 。我建议你在更新它之前将属性窗口顶部的配置组合框设置为所有配置,以便一致地设置它。

您也可以通过卸载项目并手动编辑来纠正此问题。查找AnyCPU属性并确保它在没有条件的属性组中设置,或者在每个配置条件的所有属性组中设置。

  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
    <PlatformTarget>AnyCPU</PlatformTarget>
    <OutputPath>bin\Debug\</OutputPath>
    ...
  </PropertyGroup>
  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
    <PlatformTarget>AnyCPU</PlatformTarget>
    <OutputPath>bin\Release\</OutputPath>
    ...
  </PropertyGroup>