AI智能
改变未来

iOS用workspace和cocoapods管理多个项目


1. 构建一个Workspace


如图选择构建一个WorkSpace,会生成.xcworkspace文件,以后就通过打开这个文件来打开WorkSpace。打开工程,会发现什么都没有,然后我们要添加各个工程(project)。我现在创建一个名为Myworkspace.xcworkspace的文件放在文件夹Workspace中。

2. 创建并添加新工程

方法一:双击打开Myworkspace.xcworkspace,然后新建MyApp1工程,如下图,图中的红色框框内要记得改


方法二,如果已经有创建好了的工程,可以用这种方法添加进来。
先把创建好的工程MyApp2整个文件夹拖到文件夹Workspace中,然后在Xcode文管理文件的面板里,右键选择添加新文件,就把项目的MyApp2.xcodeproj文件加进来就可以了


重复上述动作,把所有需要的项目都加进来。虽然添加项目是可以任意路径的,但是建议把所有要添加的项目放到同一个文件夹里,这样便于像header search paths这类的路径配置。

3. 互相引用

如果要在项目MyApp1中引用MyApp2中的文件,则必须要修改路径。在MyApp1的Build Settings 里找到Header Search Paths,添加一项(SRCROOT)/../MyApp2(也可以直接将文件夹MyApp2拖到里面自动生成路径),并且设置为recursive。(SRCROOT)/../MyApp2(也可以直接将文件夹MyApp2拖到里面自动生成路径),并且设置为recursive。(SRCROOT)/../MyApp2(也可以直接将文件夹MyApp2拖到里面自动生成路径),并且设置为recursive。(SRCROOT)是当前的工程路径,…是返回上一层,然后到MyApp2文件夹。使用了相对路径,为了是项目移动不会影响这个配置,只要主工程和其他工程的相对位置不变,这里的相对位置是固定在同一个文件夹。


接下来是引用文件


引入头文件时如果不引入.m文件会报错(如果是静态库可以引入.a文件,同时要公开.h文件,这样就不会报错了)

4. 使用cocoaPods管理

用终端cd到根目录,用 $ touch Podfile命令创建Podfile文件,然后用xcode打开编辑

workspace \'MyWorkspace.xcworkspace\' //workspace文件名project \'MyApp2/MyApp2.xcodeproj\' //主工程路径target \'MyApp2\' doplatform :ios, \'8.0\'project \'MyApp2/MyApp2.xcodeproj\' //工程路径pod \'Masonry\', \'~> 1.0.2\'endtarget \'MyApp1\' doplatform :ios, \'8.0\'project \'MyApp1/MyApp1.xcodeproj\' //工程路径pod \'Masonry\', \'~> 1.0.2\'pod \'AFNetworking\', \'~> 3.1.0\'end

最后执行$ pod install指令就OK了
如果出现以下错误


则在header search paths中添加$(inherited)即可(或者先执行步骤4再执行步骤3也可避免此问题)

demo地址

  • 点赞1
  • 收藏
  • 分享
  • 文章举报

春风酿酒发布了12 篇原创文章 · 获赞 12 · 访问量 212私信关注

赞(0) 打赏
未经允许不得转载:爱站程序员基地 » iOS用workspace和cocoapods管理多个项目