声明:本文大部分内容来自于以下网址,其余的部分是自己尝试的总结和补充。

http://www.jianshu.com/p/5f088acecf64  完整修改iOS工程名1

http://www.cnblogs.com/GarveyCalvin/p/4195745.html   完整修改iOS工程名2

http://blog.csdn.net/freedom2028/article/details/10244819  iOS工程中删除pod

http://blog.csdn.net/xiaonaiping061/article/details/48465159  带有pod的iOS工程修改工程名一. 先来看修改ios工程名:

前言:在iOS开发中,有时候想改一下项目的名字,都会遇到很多麻烦。直接改项目名吧,XCODE又不会帮你改所有的名字。总是有很多文件、文件夹或者是项目设置的项。而且都是不能随便改的,有时候改着改着,编译不了。所以各位重命名项目时,记得先备份好一份噢。

一、先来看修改ios工程名:

本文会把一个项目名叫“test233333333”改成“test”。

1)打开项目:

以上是目前的项目结构。

2)选中项目设置并按下回车,输入新的项目名字:

3)输入完后按回车,弹出改名前和改名后的文件对名,这时点击“Rename”:

4)这时会再弹出一个对话框,直接点击“Enable”:

5)这时你会发现,还有很多的“旧”项目名字的文件/文件夹:

不要紧,继续往下看,一起把这些“旧”名字消灭掉。

6)我们先把这两个文件夹改一下名字:

改前:

改后:

这里的testTests,原先为test233333333Tests,我们改名字时需要注意,只需要把旧名字(test233333333)替换成新名字(test)即可,不要把其它字符(Tests)删除!

7)选中这个类文件,更改类名字时不能直接重命名,需要使用Xcode内置的更改类名功能:

点击@interface后面的类名:

按照下图步骤操作(Edit->Refactor->Rename):

输入新的类名字:

点击Save:

8)我们再次看一下我们的目录结构,已经全部都改过来了,但是现在编译是不会通过的:

9)我们试着Build一下, XCode报了这样一个错误,找不到连接文件:

这是因为还有很多项目的设置项需要改一下名字,目前现在Xcode还是指向了之前的那个项目名字。

10)全局搜索之前的项目名字并替换成新项目名字:

注意:这里只是替换一下注释,真正的项目设置需要我们手动操作。

11)全局搜索旧项目名字出来的界面,我们点击进去更改名字:

点击之后会自动跳转到这个界面,双击值进行更改(下面改名的步骤也一样):

更改完之后,还得再改一些东西。不要问为什么这么麻烦,只因任性。

注意:继续全局搜索替换,直到全局搜索不到旧名字为止!

12)打开项目文件夹,继续更名:

更名后:

回到项目看一下,文件全发“红”了。不要紧,正常的:

13)更改相对应文件夹的资源文件夹路径:

13.1)选中test文件夹:

13.2)点击文件夹小图标,更改路径:

找到刚才改好名字的文件,点击choose。下个文件夹(testTests)步骤重复以上的。

改好之后,再次Build,这时已经通过。

项目完整重命名之后的效果截图:

项目结构:

项目真实目录结构:

小结:没有改过项目的朋友,改之前记得先备份好噢。

不带有pod的工程到此就结束了,但是含有pod的工程还得进行以下操作删掉pod。

二、含有pod的工程

1. 删除工程文件夹下的Podfile、Podfile.lock及Pods文件夹

2. 删除xcworkspace文件

3. 使用xcodeproj文件打开工程,删除Frameworks组下的Pods.xcconfig及libPods.a引用

4. 在工程设置中的Build Phases下删除Check Pods Manifest.lock及Copy Pods Resources

ps:如果将cocoapods集成到工程中后不小心修改或删除了其相关文件导致无法便以通过例如:不小心把

Pods.xcconfig给删除了然后出现diff: /../Podfile.lock: No such file or directory,用上面的方法删除cocoapods后,

再重新$sudo pod install一下就好了。

如果编译的时候出现权限问题,对工程文件夹$sudo chmod 777 path-to-project-folder/*

$sudo chown 777 path-to-project-folder/*

即可。

注意:

此时可能会出现两个问题:

1、删除pod然后重新install导致旧的配置文件存在工程中,从而pod install失败。

解决方法:把下图中的配置设置成none,如图

2、改名导致的出现老工程的.a文件不能连接到。

解决方法:需要在下图中把对应的.a删掉就ok了。

Pod管理的iOS项目修改工程名的更多相关文章

  1. ios 全方位修改工程名

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

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

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

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

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

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

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

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

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

  6. eclipse修改工程名

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

  7. Eclipse重命名项目名后如何彻底修改工程名

    背景:在Eclipse中当我们修改了一个Web项目名称后,在再次运行该项目,发现使用新的名称无法正常的浏览,而用旧的名称去可以 解决方案: 1:修改该项目目录下:.project文件 <?xml ...

  8. Xcode9 修改工程名(含cocopods)

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

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

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

随机推荐

  1. 如何更新node和npm版本

    更新npm --->  npm undate -g 更新node --->  npm install -g -n n latest

  2. 19.Imagetragick 命令执行漏洞(CVE-2016–3714)

    Imagetragick 命令执行漏洞(CVE-2016–3714) 漏洞简介: Imagetragick 命令执行漏洞在16年爆出来以后,wooyun上面也爆出了数个被该漏洞影响的大厂商,像腾讯, ...

  3. win7 系统安装 docker

    如果顺利的话,步骤如下: 1.下载DockerToolbox 2.安装DockerToolbox,默认配置,一路下一步即可完成安装 3.安装成功后,桌面会新增三个快捷方式,如下图 4.点击运行Dock ...

  4. TMF大数据分析指南 Unleashing Business Value in Big Data(一)

    大数据分析指南 TMF Frameworx最佳实践 Unleashing Business Value in Big Data 前言 此文节选自TMF Big Data Analytics Guide ...

  5. 多值cookie

  6. C# 字符串转JSON

    一.简单小结 C# 中 String 转 JSON var items = JsonConvert.DeserializeObject<class>(stringJSON); 这里的 cl ...

  7. nginx访问日志中添加接口返回值

    因为nginx作为web服务器时,会代理后端的一些接口,这时访问日志中只能记录访问接口的status码,也就是说,只能获得200.404 这些的值 那么如何获得接口返回的response值呢? 下面开 ...

  8. oracle例程

    原创转载请注明出处 启动例程: 数据库启动例程的3个步骤 启动例程(NOMOUNT状态):读取参数文件,分配SGA和启动后台进程. 装载数据库(MOUNT状态):根据初始化参数control_file ...

  9. 深入解析Android Design包——Behavior

    已经说过了,在AndroidDesign包中主要有两个核心概念:一是NestedScroll,另一个就是Behavior. 相比于NestedScroll这个概念来说,Behavior分析起来会难很多 ...

  10. angularJs中对时间戳的处理

    一. ng表达式 <!-- 表达式中使用 --> {{ dt1 | date:'yyyy-MM-dd HH:mm:ss' }} 二. 控制器中使用 //controller必须注入 $fi ...