如何解决如何将未编译的.mlmodel添加到Xcode UnitTests包
我需要在我的单元测试中添加一个.mlmodel文件,以检查框架中的编程模型编译。但是,从版本12开始,Xcode会自动编译添加到项目中的任何.mlmodel文件,并将其替换为.mlmodelc,在这种情况下是不需要的。
因此,如果我向项目添加TestModel.mlmodel
,则无法获得资源URL:
NSBundle *bundle = [NSBundle bundleForClass:ModelTest.class];
// modelURL is nil
NSURL *modelURL = [bundle URLForResource:@"TestModel"
withExtension:@"mlmodel"];
如果我打开已编译的捆绑包,则可以在其中看到TestModel.mlmodelc
。
如何在Xcode中禁用自动CoreML模型编译?
解决方法
在项目导航器中选择了项目后,可以在构建阶段选项卡的“编译源”部分中找到所有已编译的文件。你可以在那找到文件吗?如果是,则可以将其删除。
在项目导航器中选择文件后,您可以从文件检查器的目标成员身份部分中执行相同的操作:目标名称旁边的框已选中,请取消选中。
最后,如果您希望将此文件添加到应用程序的资源中,则可能必须将其添加到“构建阶段”选项卡的复制捆绑包资源部分中(或者您可以创建一个特定的复制文件阶段)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。