Ios Podspec:未找到前缀导入

Ios Podspec:未找到前缀导入,ios,objective-c,xcode,cocoapods,podspec,Ios,Objective C,Xcode,Cocoapods,Podspec,我的项目正在建设中。运行pod spec lint时,我收到以下错误: - ERROR | [MyApp/Core] [xcodebuild] Target Support Files/Pods-MyApp/Pods-MyApp-prefix.pch:6:9: fatal error: 'MyConstants.h' file not found 值得注意的是常量文件的位置:Project/Classes/MyConstants.h。这是我的播客: 我还尝试交换线路: spec.prefi

我的项目正在建设中。运行pod spec lint时,我收到以下错误:

 - ERROR | [MyApp/Core] [xcodebuild]  Target Support Files/Pods-MyApp/Pods-MyApp-prefix.pch:6:9: fatal error: 'MyConstants.h' file not found
值得注意的是常量文件的位置:Project/Classes/MyConstants.h。这是我的播客:

我还尝试交换线路:

spec.prefix_header_contents = '#import "MyConstants.h"'
与:

但结果是一样的。我应该怎么做才能让prefix看到源代码

--编辑--

我以重构所有源文件结束。我已经导入了手动需要的类,没有使用前缀。因此,这个问题对我来说不再重要。

带有spec.prefix\u header\u contents='import MyConstants.h' 您指定了要插入到.pch文件中的代码行,该文件由pod在安装过程中创建。如果出现此错误,是因为文件MyConstants.h丢失

编辑
如果MyConstants.h文件是主要项目源,则无法从Pod访问它。

我也有同样的问题。最后,我在我的子类中添加了ss.public_头文件。这更像是一项对我有用的工作,我不会称之为解决方案。根据文件:

也许这并不完全准确

编辑
我的解决方案并不完全正确。当我使用pod lib lint运行验证时,当我使用spec选项验证它时,它被成功构建。我再次收到相同的错误。我最终将问题写给cocaoPods团队

您不应该依赖pch,因为在最新的Xcode中,默认情况下不再创建pch。只需将MyConstants.h包含在需要它的每个.m中。这不是解决方案,而是一种变通方法。我想要pch,但我没有时间重构整个应用程序而不使用它。在pch文件上深化设计是不好的,但这是你的选择。您想要添加可可豆的库应该能够在没有pch文件的项目中工作。@rckoenes我想在那里使用一个全局警告宏。正如你所写,这是我的选择。我完全明白这一点。事实上,有可能添加一个pch文件,这意味着我的库可以使用它。这无助于解决我的问题,请不要深入主题。你应该将你的Pod名称添加到导入中,比如:导入问题在于它没有丢失!我明白错误是怎么说的。我不知道如何让椰子荚看到那个头球。我甚至在我的问题中写下了文件的位置,你可以注意到,它是导入的。在上一次提交中,我可以在不同的项目中从podfile安装后看到该文件。您必须将.h文件包含到您的s.source\u文件中。无法从podspec访问主项目文件。source_files='Classes/***'导入.h文件。这是ofc模块项目的一部分,我在我的podspec文件中也做了同样的事情,而且效果很好。正在尝试进行pod安装cocoapods下载了哪些文件?我认为podspec中关于source_file属性的部分有一个错误。可能是文件夹层次结构。谢谢您的尝试!我在吊舱规格上不及格。我甚至不做pod安装,因为规范没有被推到我的私人CoCoapod上。是的,您对source_file属性的看法是正确的,我刚才发现了类/****而不是类/****的问题,但是更新仍然失败:/我在需要的地方导入了前缀。我花了一些时间进行重构,但很好;。Vive你能编辑你的问题并写下你是如何解决的吗?当然,完成了。正如我所说,我只是绕过了这个问题。我检查了你的答案是否真实,因为这似乎最接近于解决问题。如果你从CocoaPods团队得到答案,也请告诉我-这将在不同的项目中有用。
spec.prefix_header_contents = '#import "MyConstants.h"'
spec.prefix_header_file = 'MyApp/MyApp-Prefix.pch'
public_header_files

 A list of file patterns that should be used as public headers.    
These are the headers that will be exposed to the user’s project
and from which documentation will be generated. If no public
headers are   specified then all the headers are considered public.