我建立了2个快速项目。两者都使用CocoaPod,所以这些项目都是工作空间。
第一个就像一个框架,我在第二个类中使用了很多类。 我在这次输入中没有成功:
我按照Apple Docs中的步骤进行了操作,但我的框架(第一个项目)中的任何类都被识别出来......我有80个这样的错误:
使用未申报的类型< MyFrameworkClass>
答案 0 :(得分:3)
我知道有两个选项可用于设置具有多个pod的工作区。
您可以为两个项目创建单个podfile。您可以想象,它将创建一个单独的工作区,您的两个项目(应用程序和框架)将在其中(让cocoapods处理整个工作区)。
pod文件如下所示:
platform :ios, '8.0'
use_frameworks!
workspace 'WorkspaceName’
xcodeproj ‘FolderOfApp/Project.xcodeproj'
xcodeproj ‘FolderOfApp/App.xcodeproj'
target :ApptTarget do
xcodeproj 'FolderOfApp/App.xcodeproj'
pod ‘MyAppPod’
end
target :FrameworkTarget do
xcodeproj 'FolderOfFramework/Framework.xcodeproj
pod ‘MyFrameworkPod’
end
您可能需要添加" MyFrameworkPod"到了AppTarget,这带来了一些我仍然无法解决的警告。
无论如何,你之前有另一种选择。像现在一样创建和执行两个pod文件,创建另一个工作区,添加两个项目和两个pod(将它们与文件夹分开)。 不要添加工作空间,只需添加项目。
通过这种方法,我感觉到应用程序没有找到框架依赖项等问题,但我解决了添加框架搜索路径的问题。
答案 1 :(得分:1)
在您的POD文件中提供Swift 5非常简单的解决方案
in your directory : touch Podfile (file will create in workspace)
# platform :ios, '10.0'
use_frameworks!
workspace 'TestWorkSpace'
xcodeproj 'Project1/Project1.xcodeproj'
xcodeproj 'Project2/Project2.xcodeproj'
target 'Project1' do
xcodeproj 'Project1/Project1.xcodeproj'
#Pods for Project1
pod 'SwiftyJSON', '~> 4.0'
end
target 'Project2' do
xcodeproj 'Project2/Project2.xcodeproj'
#Pods for Project2
pod 'SwiftyJSON', '~> 4.0'
end