【发布时间】:2016-04-30 17:29:52
【问题描述】:
我为 windows 10 构建了一个通用应用程序,但我不知道原生工具链。当我准备好创建包时,我遇到了很多错误,我寻找一个没有任何运气的解决方案。
经过几次尝试,我决定将我的应用程序一块一块地放在一个测试项目中,看看有什么问题,在添加 Mvvm Light 5.2 的 ViewModelLocator 后出现以下错误:
NUTC300F:Internal Compiler Error: Native compilation failed due to out of memory error
ILT0005: 'C:\Program Files (x86)\MSBuild\Microsoft\.NetNative\x86\ilc\Tools\nutc_driver.exe
@"C:\...\Test\obj\x86\Release\ilc\intermediate\MDIL\Test.rsp"' returned exit code 1
Warning Method 'CreateLambda' within 'System.Linq.Expressions.Expression' could not be found.
C:\....\Test\Resources.System.Linq.Expressions.rd.xml 35
Warning Method 'ParameterIsAssignable' within 'System.Linq.Expressions.Expression' could not be found.
C:\....\Test\Resources.System.Linq.Expressions.rd.xml 91
这是我的 ViewModelLocatorClass
public class ViewModelLocator
{
public const string HeroDetailsPageName = "HeroDetails";
public ViewModelLocator()
{
ServiceLocator.SetLocatorProvider(() => SimpleIoc.Default);
var nav = new NavigationService();
nav.Configure(HeroDetailsPageName, typeof(HeroDetails));
SimpleIoc.Default.Register<INavigationService>(() => nav);
SimpleIoc.Default.Register<IDialogService, DialogService>();
if (ViewModelBase.IsInDesignModeStatic)
{
SimpleIoc.Default.Register<IHotSRepository, DesignDataSource>();
}
else
{
SimpleIoc.Default.Register<IHotSRepository, HotSRepository>();
}
SimpleIoc.Default.Register<MainViewModel>();
}
public MainViewModel Main => ServiceLocator.Current.GetInstance<MainViewModel>();
}
我也在使用 SQLite3、ef7 rc1、Newtosoft Json 和 HTML 敏捷包。我已经遵循了所有建议来编译 EF7。我删除了 obj 文件夹,重新启动了 Visual Studio,并在没有任何运气的情况下查找了有关该问题的所有线程。 我的机器有 16GB 内存,查看任务管理器,当我收到错误消息时,我有大约 50% 的可用内存。
我希望有人可以帮助我。
谢谢,
皮波
【问题讨论】:
-
可以安全地忽略这些警告。见这里:github.com/dotnet/corefx/issues/5088
-
谢谢,我会试一试,但现在我认为 OOM 与该警告无关。
标签: visual-studio-2015 uwp windows-10-universal .net-native