我试图创建一个带有CoreData模型的容器。我遵循了使用resources和的提示reserve_path。但是当我尝试lint使用规格时pod lib lint,会出现一个我什至不明白的奇怪错误:
- ERROR | [iOS] unknown: Encountered an unknown error (Unable to find other source ref for /Users/rzolin/Projects/ArmorText/iOS-Pod-Test/SampleMessengerCocoapodFramework/SampleMessengerCocoapodFramework/Code/DataManagement/Model/Model.xcdatamodeld/Model.xcdatamodel/contents for target SampleMessengerCocoapodFramework.) during validation.
Run Code Online (Sandbox Code Playgroud)
该规范基于几个子规范,这可能会使问题复杂化。到目前为止,在Internet上搜索没有任何帮助。
如果有人愿意看的话,有一个测试规范可以复制该错误。
完整的规格在这里:
Pod::Spec.new do |s|
s.name = 'SampleMessengerCocoapodFramework'
s.version = '0.2.0'
s.summary = 'some desc'
s.description = <<-DESC
some desc
DESC
s.homepage = 'http://www.example.com'
s.license = { :type => 'MIT', :file => 'LICENSE' }
s.author = { 'rzolin' => 'rzolin@gmail.com' }
s.source = { :git => 'https://github.com/rzolin/SampleMessengerCocoapodFramework.git', :tag => s.version.to_s }
# Platform setup
s.requires_arc = true
s.ios.deployment_target = '8.0'
s.default_subspec = 'Core'
### Subspecs
s.subspec 'Core' do |cs|
cs.dependency 'SampleMessengerCocoapodFramework/DataManagement'
cs.dependency 'SampleMessengerCocoapodFramework/Networking'
end
s.subspec 'DataManagement' do |ds|
ds.source_files = 'SampleMessengerCocoapodFramework/Code/DataManagement.h', 'SampleMessengerCocoapodFramework/Code/DataManagement/**/*'
ds.resources = [ 'SampleMessengerCocoapodFramework/Code/DataManagement/Model/Model.xcdatamodeld', 'SampleMessengerCocoapodFramework/Code/DataManagement/Model/Model.xcdatamodeld/*.xcdatamodel' ]
ds.preserve_paths = 'SampleMessengerCocoapodFramework/Code/DataManagement/Model/Model.xcdatamodeld'
end
s.subspec 'Networking' do |ns|
ns.source_files = 'SampleMessengerCocoapodFramework/Code/Networking.h', 'SampleMessengerCocoapodFramework/Code/Networking/**/*.{h,m,swift}'
end
# s.resource_bundles = {
# 'SampleMessengerCocoapodFramework' => ['SampleMessengerCocoapodFramework/Assets/*.png']
# }
# s.public_header_files = 'Pod/Classes/**/*.h'
# s.frameworks = 'UIKit', 'MapKit'
# s.dependency 'AFNetworking', '~> 2.3'
end
Run Code Online (Sandbox Code Playgroud)
我试图在Cocoapods中问这个问题,但是在这里被提到了
任何帮助,将不胜感激!
小智 8
我有与您相同的问题和错误消息。我想把.xcdatamodel豆荚放在我的豆荚里。这是我的解决方案:
仅在source_files中添加代码:
s.source_files = 'MyPodDiR/**/*.{h,m,swift,xcdatamodeld}'
Run Code Online (Sandbox Code Playgroud)将您的xcdatamodel路径添加为资源:
s.resources = 'MyPodDir/CoreData/MyPodModel*.xcdatamodeld'
Run Code Online (Sandbox Code Playgroud)小智 0
我遇到了同样的问题,通过包含SampleMessengerCocoapodFramework/Code/DataManagement/**/*您将包含所有文件(因此 Pod 尝试包含这些.xcdatamodel/xcdatamodeld文件,这就是您收到错误的地方。
coredatamodel我建议从源文件中删除。
IEs.source_files = 'SampleMessengerCocoapodFramework/Code/DataManagement/**/*.{h,m}'
并保持其余部分不变,它应该可以工作!
| 归档时间: |
|
| 查看次数: |
1845 次 |
| 最近记录: |