像平时比较平常的开发项目中,我们都只是去创建一个PROJECT,这个PROJECT对应着我们该项目的TARGET,一个PROJECT可以对应着多个TARGET,到目前为止我的开发工作中还没有遇见过这种情况。题外话就此结束,今天我们要认识了解的是使用xcode中的xcworkspace来管理我们一个项目中存在多个PROJECT的情况。
那么在什么情况下我们的项目中会拥有多个PROJECT啦?下面两种情况
1.我们就只是简单的想用workspace来管理独立的PROJECT项目
2.多个PROJECT之间相互依赖的情况下,比如我们Fun1项目需要使用Fun2项目产生的静态库,也就是说Fun1项目现在就要依赖Fun2项目了,在以前,我们可以单独创建Fun2,然后创建出Fun2的静态库文件,然后再在Fun1项目中导入这个Fun2.a静态库。但是我们使用workspace来管理多个项目的时候,就不用像以前的那种做法了。
那么下面我们来具体操作一下:
1.在某个目录下创建好一个workspace项目
File -> New -> Workspace
2.主动去更改设置编译文件输出路径
Xcode -> Preferences -> Locations
3.创建一个静态库项目Lib,往xcwordspace文件中添加该静态库项目
File -> Add Files to "xxx" -> Lib.xcodeproj
4.静态库的具*作过程就不去说了,我们看看这个Lib中的内容
5.编译好静态库文件后,我们去看看静态库输出在那个位置
没错,就是在我们之前设置的输入路径中。
6.此时,如果像平常那样去使用这个静态库,那么我们就需要导出静态库和头文件,放入到要使用该静态库的项目中。然而,既然我们使用了workspace,那么我们就不用那样去做,而是直接在workspace中来使用。
7.我们在Fun1项目中使用Lib.a这个静态库
Fun1 -> TARGET -> Build Phases -> Link Binary With Libraries
8.接着我们尝试去使用这个Lib.a,会报错,出错原因见图片说明
9,那我们怎么去修改啦?$(BUILT_PRODUCTS_DIR) 表示(Debug-iphoneos,Relese-iphoneos)
10,我们再来使用一次
11. OK 啦,整个过程就可以了!