由于需要现在要更改包名,但是在网上找了N多资料都比较老,16年的资料却是残缺不全,尤其 ios10 出了 .entitlement  的机制 ,很多琐碎的小细节 很容易忘记。所以我自己总结了一篇, 环境为 Xcode  Version 9.0 (9A235)。

注意:请在修改前使用git 备份工程,如果使用的SVN 要把 代码从仓库拖出来修改。

1,修改文件名(将bubble 修改成bubblewrap)

----->

2, 将旧项目文件夹和Tests文件夹还有UITest文件夹修改为新的名称,修改后如下图所示(我这里没有UITests,)

(注意:UITests和Tests要不要动,只修改前面的bubble,而且要把里面的.m文件名也修改)

3,右击 你的项目.xcodeproj,选择“show content package”(中文:显示包内容),看到如下目录,并将project.pbxproj文件以 文本编辑 打开。

4,替换新旧项目名:按command+f(这主要是修改项目文件路径等)

勾选 替换   ,点击  全部

5,进入项目,修改项目名(注意:如果使用的是cocopods,从 你的项目.xcworkspace 进入)

按回车 修改 bubble-->bubblewrap(如果打开工程后发现,工程文件变红了,也就是丢失了,参考直接跳到本文末,有解决方法)

点 rename

6,修改schemess

回车修改 bubble --->bubblewrap,点击close

7,修改Tests 和UITests文件(将interface 和implementation 后的bubble 修改为 bubblewarp )

8,修改 cocopods 的Podfile文件(注意,我没有UITests,所以如果你有,那么你修改三次)

9,修改旧项目的Tests及UITests文件名和cocoapods启动项及项目启动项

bubble.xcworkspace---->bubblewrap.xcworkspace

bubble.xcodeproj---->bubblewrap.xcodeproj

结束!

最后的最后:

错误1:The file “bubble.entitlements” couldn’t be opened because there is no such file.

这是 ios 10 出的签名机制,想了解更多参考 http://www.cnblogs.com/abinzhang/p/5662061.html,解决方式就是 删除报红的 bubble.entitlements 文件,然后在build Setting 中清空签名文件,在清除下Xcode 缓存 编译,解决!

错误2:diff: /../Podfile.lock: No such file or directory

diff: /Manifest.lock: No such file or directory error: The sandbox is not in sync with the Podfile.lock.

Run 'pod install' or update your CocoaPods installation.

  执行 8 ,然后 在终端 CD到项目 执行 pod install,如果还是报错,请参考  http://www.jianshu.com/p/4c3164fe552a
 
  我 执行pod install ,报错    [!] Unable to find a target named `bubblewrap`, did find `bubblewrapwrap` and `bubblewrapwrapTests`.

并且我的cocopods文件全都丢失了如下图

 
 
  这个错误说明我的cocopods 和工程捆绑有问题,于是我查看我的 Podfile 文件,发现没有问题,并没有出现

bubblewrapwarp 和 bubblewrapwarpTests

如下图

 

然后 我再次按照3和4 的步骤查找了bubblewrapwarp 发现了 18 处,所以我将bubblewrapwarp替换成bubblewrap,解决

 
 
 
 
  错误3:xxxTests.m文件和xxxUITests.m文件是不可用的
执行 2,和7 ,解决
 
 
错误4:
如果执行 5 的时候发现下面的情况是因为,提前执行了本文中的9 步骤。
 
 
解决方法:打开工程 目录,将  .xcodeproj 文件拖到上图位置中,然后点击 New Scheme,在target 选择你的 target(就是带图标那个),name就是你要改的名字。
 确定后编译, 如果你修改了Podfile , 那么会报错误2,执行pod install 就可以了
 

本文参考:http://www.jianshu.com/p/afa14125f66b

http://www.jianshu.com/p/4c3164fe552a

http://www.cnblogs.com/abinzhang/p/5662061.html

Xcode9 修改工程名(含cocopods)的更多相关文章

  1. VS中修改工程名的解决方案

    VS中修改工程名的解决方案: 一.先修改工程名/解决方案名(在VS中修改即可)举例,原先的工程名为OldProject   想要改成NewProject1.找到工程/解决方案所在的文件夹(已工程名/解 ...

  2. 安卓Eclipse如何快速修改工程名及包名

    修改工程名/包名,也是我们在开发中经常遇到的问题,比如我们在开发过程中突然觉得项目名不合适,或者根包名不合适想修改一下怎么办? 如上图所示工程,我想改变一下我的项目名,如把zzz改成xxx,把我的根包 ...

  3. Xcode里修改工程名、类名、批量修改变量名

    转:http://blog.csdn.net/yuedong56/article/details/13767001 一.修改工程名: 1.点击工程,右键,选择如图选项. 2.右侧如图位置,修改工程名. ...

  4. Pod管理的iOS项目修改工程名

    声明:本文大部分内容来自于以下网址,其余的部分是自己尝试的总结和补充. http://www.jianshu.com/p/5f088acecf64 完整修改iOS工程名1 http://www.cnb ...

  5. Xcode 修改工程名以及注意事项

    1.先把整个工程文件夹名改为新的工程名. 2.打开工程,单击,输入新的工程名,会出现,点击确定. 3.回到工程界面,在中选择 Manage Schemes,然后再弹出的对话框,把工程名改为新的名字. ...

  6. IAR拷贝工程后,修改工程名的方法

    在实际使用过程中,经常基于某个demo进行开发,但是demo的项目名往往不满足新项目的名称,如果重新建立工程,就需要进行一系列的配置,非常麻烦,其实可以直接修改项目名,做法如下; 1. 修改项目目录下 ...

  7. ios 全方位修改工程名

    本文针对于彻底修改iOS工程名,不需要另外建工程,会整理的跟新工程完全一样 1. 选中旧工程名,改为新的 然后选择rename 2. 依次选择黄色文件夹,修改名字,千万不要在Xcode外修改!!! 修 ...

  8. eclipse修改工程名

    直接修改工程可能会产生一些莫名其妙的问题,需遵循以下三步: 1. 右键工程:Refactor->Rename,或选中工程按F2,修改名称 2. 右键工程:Properties->Web P ...

  9. Eclipse下修改工程名

    汇总下网上的方法. 一. 右键工程:Refactor->Rename,或选中工程按F2,修改名称 二. 右键工程:Properties->Web Project Settings,修改Co ...

随机推荐

  1. Way to OpenSource

    @1:Follow any instructions in the readme and make sure that you can configure and run the project on ...

  2. [转] 我所经历的IBM SOA与系统整合

    2006年,一汽大众新上来一位总经理,新加坡人,整个一国际背景高端管理人才,是德国人和中国人博弈后取得的胜利. 一汽大众过去是从总部到区域到终端一体化的大盘管理模式,很僵化很粘稠,不利用快速反应.于是 ...

  3. Hibernate深入浅出(九)持久层操作——数据保存&批量操作

      数据保存: 1)session.save session.save方法用于实体对象到数据库的持久化操作.也就是说,session.save方法调用与实体对象所匹配的Insert SQL,将数据插入 ...

  4. 对象数组空指针异常说明——C#中使用对象数组必须分别为其开辟空间

    l  场景 定义一个学生类,包含字段(学号,姓名,语文成绩,数学成绩,英语成绩).属性(总成绩).三个方法分别为(求平均分.数学平均分.语文平均分). 要求:在main()方法中,定义一个学生类型的数 ...

  5. flex 实现图片播放 方案二 把临时3张图片预加载放入内存

    该方案,是预加载:前一张,当前,下一张图片,一共3张图片放入内存中.这样对内存的消耗可以非常小,加载之后的图片就释放内存. 下面示例一个是类ImagePlayers,一个是index.mxml pac ...

  6. yii框架的中的一些使用介绍

    Yii框架的使用整理 获取配置文件中的数据 Yii::$app->params[‘配置文件中对应的参数名称’] 获取文件表单提交的数据 Yii::$app->request->pos ...

  7. 递归实现N皇后问题

    其实是看到一位名为“活在二次元的伪触”的博主昨天还是前天写了篇这个题材的笔记,觉得有点意思,于是想自己来写写. 其实我发现上述那位同学写N皇后问题写得还不错,文末也会给出这位同学用通过递归的方法实现N ...

  8. Python安装setuptools时报Compression requires the (missing) zlib

    装机员为您提供Python安装setuptools时报Compression requires the (missing) zlib的文章咨询供您阅读,如何使用Python安装setuptools时报 ...

  9. 执行Oracle存储过程报权限不足的解决方法

    当前Oracle用户sofa拥有connect.dba.resource的角色权限,但奇怪的是却没有执行Oracle Procedure的权限.后来通过查找资料发现:如果sofa用户需要执行Proce ...

  10. 【转】Android BitmapShader 实战 实现圆形、圆角图片

    转载自:http://blog.csdn.net/lmj623565791/article/details/41967509 1.概述 记得初学那会写过一篇博客Android 完美实现图片圆角和圆形( ...