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 BundleOK,完成上面的操作后,插件就可以正常使用了
如果手贱误点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 ...
随机推荐
- Git git rebase 使用
原文:http://gitbook.liuhui998.com/4_2.html 一.基本 git rebase用于把一个分支的修改合并到当前分支. 假设你现在基于远程分支"origin ...
- NOI2015 软件包管理器 manager
显然链剖 然而只询问到根的信息,不用管lca,要好些很多(虽然我没那么写) 对于安装 查询和维护到根路径 对于卸载 查询和维护子树信息 因为链剖本身是用dfs序建的线段树,所以使得查询和修改子树非常方 ...
- iOS开发zhiATM机的设计与实现
// // main.m // ATM // #import <Foundation/Foundation.h> #import "ATM.h" #import &qu ...
- mybatis3温故
MyBatis可以利用SQL映射文件来配置,也可以利用Annotation来设置.MyBatis提供的一些基本注解如下表所示. 注解 目标 相应的XML 描述 @CacheNamespace 类 &l ...
- [Angular 2] Use Service use Typescript
When creating a service, need to inject the sercive into the bootstrap(): import {bootstrap, Compone ...
- STL——increment/decrement/dereference操作符
increment/dereference操作符在迭代器的实现上占有非常重要的地位,因为任何一个迭代器都必须实现出前进(increment,operator++)和取值(dereference,ope ...
- npm scripts 助力前端开发,实时刷新浏览器
用browser-sync或者lite-server来监控文件的改变,当文件改变时,就自动刷新浏览器. 用node-sass来实时编译scss文件. 用parallelshell来异步执行npm sc ...
- POJ 1986(LCA and RMQ)
题意:给定一棵树,求任意两点之间的距离. 思路:由于树的特殊性,所以任意两点之间的路径是唯一的.u到v的距离等于dis(u) + dis(v) - 2 * dis(lca(u, v)); 其中dis( ...
- 13个简单有用的android开发代码
1:查看是否有存储卡插入 String status=Environment.getExternalStorageState(); if(status.equals(Enviroment.MEDIA_ ...
- sql server identity限制
identity属性是依赖于表的,它不是一种独立的序列机制,不能随意使用它生成新值. 标识值是在insert语句执行时生成的,不是在执行之前生成的. identity属性是以异步的方式分配标识值.这意 ...