linux添加多个workspace方法,使用workspace管理多个project
8种机械键盘轴体对比
本人程序员,要买一个写代码的键盘,请问红轴和茶轴怎么选?
Xcode可以使用workspace同时存在和管理多个project,也就是一个项目中同时存在多个xcodeproj。
如图:
创建workspace
打开 File->New-Workspace
这样就创建了一个空的的workspace,然后就可以添加project到其中了。
添加或创建project
打开 File->New->Project,就可以创建一个新的project。
在创建的时候把project添加到workspace中
同样的方式可以继续创建更多的project。
多个project关联使用
以我的Demo中的UIKitDynamic的project为例,编译之后会有一个libUIKitDynamic.a的静态文件,主project中添加这个静态文件。
在Header Search Paths中添加project的路径。
可以直接将project的文件夹拖到这里。
下面就可以在iOS-FoundationDemo中引用UIKitDynamic的类了。
使用bundle引用管理多project中的xib文件
在多个project的时候,使用创建xib文件经常无法关联对应的target。
可以在每个project中使用bundle管理自己的xib,这样就可以正常的使用了。
创建目录文件夹作为bundle的保存路径
在项目的根目录中创建文件夹ModuleBundles。
在project中创建bundle
将bundle的Base SDK改为iOS,默认是macOS。
将新建带有xib文件的class,在targets中记得选中这个bundle。这样编译的时候xib文件会添加下到bundle中。
下面非常重要的一步,就是利用脚本,将每次编译的bundle文件放到之前在根目录下创建的ModuleBundles文件夹中。
使用下面的脚本
这个脚本的INSTALL_DIR需要改为你的工程名字
1
2
3
4FMK_NAME=${PROJECT_NAME}
INSTALL_DIR=${SRCROOT}/../../iOS-FoundationDemo/ModuleBundles/${PROJECT_NAME}
ditto "${BUILT_PRODUCTS_DIR}/${FMK_NAME}.bundle" "${INSTALL_DIR}/${FMK_NAME}.bundle"
先编译一次对应的project,这样就会有对应的bundle,然后add file到项目工程的ModuleBundles的group中。
这样就可以正常的使用xib文件了。虽然每次添加bundle步骤麻烦点,但是用起来后还是很顺手的,之前尝试了几次其他的方式,但都大同小异,我觉着这种方式算是比较明了的。
linux添加多个workspace方法,使用workspace管理多个project相关推荐
- liunx创建php环境变量,linux添加环境变量的方法总结
linux添加环境变量的方法总结 linux对环境变量有无双引号.或者变量用不用{}括起来并不敏感,小小的看了下profile文件,似乎系统如果发现变量没有引号,会自动加上. 但变量前必须加$符号,类 ...
- linux可以使用的远程管理,linux下可以使用以下()方法进行远程管理
linux下可以使用以下()方法进行远程管理 更多相关问题 1013的倒数是______:______和14互为倒数. 12的倒数是______,______的倒数为47. 试说明按年度计划分配率分配 ...
- linux 添加最大串口数量方法
很多 linux 安装好后只有可以看到 4 个或 8 个串口,比如:OS 默认串口数量Red hat 9.0 4Ubuntu 9.10/10.4 4SUSE 11 8如 SUSE11 可以看到,8 个 ...
- Linux中常见软件安装方法及常见管理方法
软件安装及管理 一.软件的类型 二.Tar包安装.升级.卸载(必须会) 三.RPM软件包安装及管理(必须会) 四.脚本安装.升级.卸载 五.SRPM包安装(知道就行,很少用) 一.软件的类型 1.软件 ...
- linux添加了一条静态路由,为Linux新增静态路由的方法
为Linux新增静态路由的方法 静态路由是用户手工配置的路由信息,起到保护网络安全的作用,那么要如何为Linux系统新增一条静态路由呢?下面YJBYS小编就给大家介绍下Linux新增静态路由器的方法. ...
- linux加新的硬盘,linux添加新硬盘
1.添加新磁盘 2.fdisk -l查看磁盘被识别的名称 3.如果输入fdisk -l命令没有找到新的磁盘,按下面步骤操作 1)进入到cd /sys/class/scsi_host/ 2)echo & ...
- python给函数设置超时时间_在 Linux/Mac 下为Python函数添加超时时间的方法
我们在使用 requests 这类网络请求第三方库时,可以看到它有一个参数叫做 timeout ,就是指在网络请求发出开始计算,如果超过 timeout 还没有收到返回,就抛出超时异常.(当然存在特殊 ...
- Linux 系统添加静态路由的方法
Linux 系统添加静态路由的方法 1.添加一条默认路由 route add default gw 10.0.0.1 (默认只在内存中生效) 开机自启动可以追加到/etc/rc.local文件里 e ...
- linux 添加开机启动项的三种方法。
原文地址: https://blog.csdn.net/lylload/article/details/79488968 Shell环境变量配置文件:https://blog.csdn.net/yzs ...
最新文章
- JS 正则表达式 0.001 ~99.999
- CNN是靠什么线索学习到深度信息的?——一个经验性探索
- java 数组a赋值给数组b_java编程将a,b数组中不同的数字保存到一个新的数组中
- lenet pytorch 官方demo学习笔记
- 谈谈你对IOC的理解
- 匿名内部类与Lambda表达式
- cin、cin.get()、cin.getline()、getline()、gets()等函数的用法
- YARN的服务库和事件库
- 强化学习基础总结(三)
- 基于Protues的Arduino学习笔记01-Arduino UNO实验板设计
- mysql for CodeSmith
- 通用算法(ML,DL)分类判定指标:召回率 Recall、精确度Precision、准确率Accuracy等
- php ZipArchive 压缩整个文件夹 - 自带ZipArchive类 - PHP递归创建目录压缩包
- 立体栅格地图_高精地图之3D栅格地图的应用
- 4讲 图像 表格 实际应用-菜谱 课堂练习-课程表
- idea 编码扫描插件_用IDEA这样Review代码真牛逼
- Linux系统启动分析
- word中插入手写的电子签名
- android 8.0 edittext,android – Autofill框架更新8.1导致EditText崩溃
- thinker board s debian系统安装配置