Xcode升级导致插件失效的解决办法-b
作为iOS界的攻城师,每一次水果发布新的Xcode开发版本时,我们都会跟进,然而那些好用的Xcode插件都会莫名的失灵。。。对此我各种百度,在这里,我将跟大家分享我是如何解决这些问题的。当然,我的方案是建立在前人的基础上完善的
方案一
- 首先查看 Xcode 的 UUID,在终端输入
defaults read /Applications/Xcode.app/Contents/Info DVTPlugInCompatibilityUUID
如图:
DVTPlugInCompatibilityUUID 找到 Xcode 插件所在的目录
回到Mac桌面,快捷键cmd + shift + g
将下面的粘贴进去,跳到插件目录~/Library/Application Support/Developer/Shared/Xcode/Plug-ins
选择插件, 例如Alcatraz, 右键
显示包内容
, 打开info.plist
如图:Alcatraz插件在plist文件中找到
DVTPlugInCompatibilityUUIDs
, 点击加号
, 添加一个item, 对应的value值为输入刚才终端中获得的UUID
,cmd + s
保存
如图:添加UUID- 重启Xcode,弹出的对话框中选择
Load Bundle
如图:选择Load Bundle
OK,完成上面的操作后,插件就可以正常使用了
如果手贱误点Skip Bundle
,找到该插件安装路径下,继续打开在 info.plist 删除与命令端里面同样的UUID号,一般都是会在最后一行,自己添加的那一行也要删除掉
保存之后重启Xcode
再次重复上面的步奏。在重启就再次出现了插件提示,注意这次自己的手喔~
高效快捷方法:
全在终端执行,依次输入如下命令
//获取DVTPlugInCompatibilityUUID字段
defaults read /Applications/Xcode.app/Contents/Info DVTPlugInCompatibilityUUID
//将XXXX替换成刚刚获取的DVTPlugInCompatibilityUUID
find ~/Library/Application\ Support/Developer/Shared/Xcode/Plug-ins -name Info.plist -maxdepth 3 | xargs -I{} defaults write {} DVTPlugInCompatibilityUUIDs -array-add XXX
备注:
XXX 替换为自己获得的 UUID 比如:F41BD31E-2683-44B8-AE7F-5F09E919790E
如图:

最后记得重启 xcode, 然后选择 Load Bundle
加载就 OK 了.
方案二
- 关闭Xcode.
- 打开终端,输入:
tail -f /var/log/system.log
- 别关闭终端,此时重新打开Xcode,就会看到终端不断的打印出log内容
[MT] PluginLoading: Required plug-in compatibility UUID9F75337B-21B4-4ADC-B558-F9CADF7073A7 for plug-in at path‘~/Library/ApplicationSupport/Developer/Shared/Xcode/Plug-ins/Alcatraz.xcplugin’ notpresent in DVTPlugInCompatibilityUUIDs
从中就可以发现,你运行的Xcode的UUID是多少 * - 接下来的步奏同方案一从
步骤2
开始往下进行即可
原文链接:http://www.jianshu.com/p/f577d58654d4
著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”。
Xcode升级导致插件失效的解决办法-b的更多相关文章
- 每次Xcode 升级之后 插件失效,两步解决
以下内容来源:http://www.cocoachina.com/bbs/read.php?tid=296269 每次Xcode 升级之后 插件失效,两步解决 1.打开终端,输入以下代码获取到DVTP ...
- Xcode中插件的安装以及Xcode升级后插件实效的解决方法
插件的安装 下载好插件,直接运行,然后将Xcode关闭,再次打开Xcode会弹出一个提醒框. 这时候选择 Load Bundle 即可,这时候插件就安装到了Xcode上. Xcode所有的插件都安装在 ...
- Xcode注释插件 VVDocumenter 升级Xcode6.x 失效的解决办法
失效的原因其实是因为在插件的uuid列表中缺少自己的uuid,解决办法如下; 1,打开终端 输入命令: defaults read /Applications/Xcode.app/Contents/I ...
- Xcode升级后插件失效的原理与修复办法
转载:http://joeshang.github.io/2015/04/10/fix-xcode-upgrade-plugin-invalid/ Xcode 的插件大大丰富了 Xcode 的功能,而 ...
- xcode升级后, 插件失效修复
1. 首先查看 Xcode 的 UUID,在终端执行 defaults read /Applications/Xcode.app/Contents/Info DVTPlugInCompatibilit ...
- 病毒软件,导致DNS失效的解决办法
问题症状,DNS失效了,ping域名总是失败. 问题回顾:几个周之前,某群友在群里上传了一个病毒软件,我想去测验下,最后果然中毒.前几天,把软件卸载了,上周末解决了删除最后一款软件导致无法上网的问题. ...
- 升级Xcode 导致插件失效的解决的方法
我们在升级xcode的情况下,我们的一些第三方插件就会失效. 比方cocoapods,等比較重要的三方插件, 解决这个问题例如以下: 进入插件文件夹:~/Library/Application Sup ...
- iOS开发-Xcode升级后插件失效解决办法
打开terminal,输入如下命令: | xargs -I{} defaults write {} DVTPlugInCompatibilityUUIDs -array-add `defaults r ...
- 一行命令解决 xcode升级新版本插件失效问题
sudo find ~/Library/Application\ Support/Developer/Shared/Xcode/Plug-ins -name Info.plist -maxdepth ...
随机推荐
- linux 下安装配置jboss as7以及部署应用
linux 下安装配置jboss as7以及部署应用 1.测试平台及软件 centos 5.4 jdk-7u5-linux-i586.rpm jboss-as-7.1.1.Final.zip jbos ...
- Java中对象的深复制和浅复制详解
1.浅复制与深复制概念 ⑴浅复制(浅克隆) 被复制对象的所有变量都含有与原来的对象相同的值,而所有的对其他对象的引用仍然指向原来的对象.换言之,浅复制仅仅复制所考虑的对象,而不复制它所引用的对象. ⑵ ...
- grep 查找当前文件夹下所有文件内内容 并显示文件名
grep -H comm * 显示结果 rclog:recommend/ysclick,1,2 rclog:recommend/utagclick,1,8 .................... t ...
- Python判断上传文件类型
在开发上传服务时,经常需要对上传的文件进行过滤. 本文为大家提供了python通过文件头判断文件类型的方法,非常实用. 代码如下 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ...
- PHP学习之[第11讲]新浪微博开放平台 PHP 与 OAuth 接口(1)
我是下载的微博最新的API练习了一下认证过程.
- [转] Linux文件系统之hard link&symbol link
这个图很清楚的表示出硬链接和软链接的方式. 1.硬链接: 基本定义:硬链接是有着相同inode号的仅文件名不同的文件(该文件名包含路径信息). 理解:如图,hard link和原始file通过同一个i ...
- Python可迭代对象、迭代器和生成器
Python可迭代对象.迭代器和生成器 python 函数 表达式 序列 count utf-8 云栖征文 python可迭代对象 python迭代器 python生成器 摘要: 8.1 可迭代对象( ...
- asp.net学习之DataList控件
asp.net学习之DataList控件 DataList控件与Repeater控件一样由模板驱动,与Repeater控件不同的是: DataList控件默认输出是一个HTML表格.DataLis ...
- C# DateTime.Now
//2008年4月24日 System.DateTime.Now.ToString("D"); //2008-4-24 System.DateTime.Now.ToString(& ...
- Android打开系统的Document文档图片选择
打开Document UI 过滤图片 private void startAcitivty() { Intent intent = new Intent(); intent.setAction(&qu ...