电子邮件或邮箱传输后,Objective-C插件和CoreML模型失败

问题描述

我有一个用Objective-C编写的插件,其中包含CoreML模型。插件和ML模型可以在本地编译并正常运行。如果我通过Box通过电子邮件发送或传输插件模型和coreml模型,我的插件将崩溃并引发损坏的错误。我可以通过删除终端xattr -cr me/myplugin.plugin中的扩展属性来使插件正常工作,但是代码的ML部分仍然失败。

如果我使用XCode进行监视,那么当coreml模型失败时,我会注意到以下内容:

[coreml] Input feature input_layer required but not passed to neural network.
[coreml] Failure verifying inputs.

通过电子邮件/邮箱进行传输时,是否存在某些签名或附加属性会导致此问题?

解决方法

是否存在一些导致此问题的签名或附加属性 通过电子邮件/邮箱传输时出现问题?

由于您可以访问每个文件的两个版本(在通过邮箱发送电子邮件/传输之前以及传输之后)。

转到每个文件的两个版本,然后执行以下操作:

ls -la

如果它具有扩展属性,将有一个@符号。例如:

drwxr-xr-x@ 254 hoakley staff 8636 24 Jul 18:39 miscDocs

如果传输后的版本没有@符号,则它们没有扩展属性。

然后对每个文件(两个版本)执行以下操作:

xattr -l filepath

这将显示每个文件的扩展属性。 您应该比较每个文件的两个版本的属性,并观察差异。这应该可以回答您的问题。如果没有区别,则没有添加或删除扩展属性。

阅读:https://eclecticlight.co/2017/08/14/show-me-your-metadata-extended-attributes-in-macos-sierra/

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...