我们正在努力构建我们的项目,直到今天这才成为问题。
我们得到了一个包含多个项目的解决方案,包括可移植类库 (PCL) 项目。我们之前已经成功构建了这些项目,但我们的 Macbook 失去了构建这些项目的能力。
对于每个 PCL 项目,我总共得到 31 个构建错误:
- The predefined type 'System.Object' is not defined or imported (CS0518)
- The predefined type 'System.ValueType' is not defined or imported (CS0518)
- The predefined type 'System.Attribute' is not defined or imported (CS0518)
- 28 more times the same error stating other basic classes like Int16, Int32, Double, Single, etc.
为了查看这种情况是否总是发生,我使用新的 PCL 项目创建了一个新的解决方案。试图编译它,但我在那里遇到了同样的错误。 检查引用资料后,我发现它们都是“红色”的。
我使用的是 Xamarin Studio 4.0.10,但我也在 MonoDevelop 中尝试过。都没有成功。
我可以简单地在 VS + Xamarin.iOS 插件中创建一个项目并将其推送到 mac,它就会运行。但是在 Mac 本身上构建不再有效。
额外的,可能相关的信息:
- 我们之前在 Mac 上开发。延长 monotouch 许可后,我们下载了 Xamarin.iOS 插件并在 Windows 机器上继续开发。
- 延长许可后,我们还获得了 monotouch 和 Xamarin studio 的新更新
- 自从延长许可后,我们没有直接在 Mac 上构建。
- 我们今天决定直接在 Mac 上构建,因为我们无法通过 Visual Studio 在实际设备上运行该应用。
欢迎任何可能的解决方案。
最佳答案
这是当前版本(3.2.0)的一个bug
您可以:
- 使用 Visual Studio 构建您的 PCL 项目或
- 切换到 alpha channel 并升级到 3.2.1 alpha。转到 Xamarin Studio > 检查更新 > 并将更新 channel 设置为 Alpha。这包括 3.2.0 的修补程序,我认为它与损坏的 PCL 有关
更新
虽然 alpha 版本 (3.2.1) 能够构建一个新的 PCL 项目,但仅此而已。对我来说,它无法识别许多关键字,并在我的实际项目中出现无意义的错误。如果我找到修复程序,我会在此处发布。
关于c# - 不在 Mac/Xamarin Studio 上构建的新 PCL 项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18058089/