作为iOS界的攻城师,每一次水果发布新的Xcode开发版本时,我们都会跟进,然而那些好用的Xcode插件都会莫名的失灵。。。对此我各种百度,在这里,我将跟大家分享我是如何解决这些问题的。当然,我的方案是建立在前人的基础上完善的

方案一


  1. 首先查看 Xcode 的 UUID,在终端输入

    defaults read /Applications/Xcode.app/Contents/Info DVTPlugInCompatibilityUUID

    如图:

    DVTPlugInCompatibilityUUID
  2. 找到 Xcode 插件所在的目录
    回到Mac桌面,快捷键 cmd + shift + g 将下面的粘贴进去,跳到插件目录

    ~/Library/Application Support/Developer/Shared/Xcode/Plug-ins
  3. 选择插件, 例如Alcatraz, 右键显示包内容, 打开info.plist
    如图:

    Alcatraz插件

    在plist文件中找到DVTPlugInCompatibilityUUIDs, 点击加号, 添加一个item, 对应的value值为输入刚才终端中获得的UUIDcmd + s保存
    如图:

    添加UUID
  4. 重启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 了.

方案二


  1. 关闭Xcode.
  2. 打开终端,输入:tail -f /var/log/system.log
  3. 别关闭终端,此时重新打开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是多少 *
  4. 接下来的步奏同方案一从步骤2开始往下进行即可
文/请勺子喝杯咖啡(简书作者)
原文链接:http://www.jianshu.com/p/f577d58654d4
著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”。

Xcode升级导致插件失效的解决办法-b的更多相关文章

  1. 每次Xcode 升级之后 插件失效,两步解决

    以下内容来源:http://www.cocoachina.com/bbs/read.php?tid=296269 每次Xcode 升级之后 插件失效,两步解决 1.打开终端,输入以下代码获取到DVTP ...

  2. Xcode中插件的安装以及Xcode升级后插件实效的解决方法

    插件的安装 下载好插件,直接运行,然后将Xcode关闭,再次打开Xcode会弹出一个提醒框. 这时候选择 Load Bundle 即可,这时候插件就安装到了Xcode上. Xcode所有的插件都安装在 ...

  3. Xcode注释插件 VVDocumenter 升级Xcode6.x 失效的解决办法

    失效的原因其实是因为在插件的uuid列表中缺少自己的uuid,解决办法如下; 1,打开终端 输入命令: defaults read /Applications/Xcode.app/Contents/I ...

  4. Xcode升级后插件失效的原理与修复办法

    转载:http://joeshang.github.io/2015/04/10/fix-xcode-upgrade-plugin-invalid/ Xcode 的插件大大丰富了 Xcode 的功能,而 ...

  5. xcode升级后, 插件失效修复

    1. 首先查看 Xcode 的 UUID,在终端执行 defaults read /Applications/Xcode.app/Contents/Info DVTPlugInCompatibilit ...

  6. 病毒软件,导致DNS失效的解决办法

    问题症状,DNS失效了,ping域名总是失败. 问题回顾:几个周之前,某群友在群里上传了一个病毒软件,我想去测验下,最后果然中毒.前几天,把软件卸载了,上周末解决了删除最后一款软件导致无法上网的问题. ...

  7. 升级Xcode 导致插件失效的解决的方法

    我们在升级xcode的情况下,我们的一些第三方插件就会失效. 比方cocoapods,等比較重要的三方插件, 解决这个问题例如以下: 进入插件文件夹:~/Library/Application Sup ...

  8. iOS开发-Xcode升级后插件失效解决办法

    打开terminal,输入如下命令: | xargs -I{} defaults write {} DVTPlugInCompatibilityUUIDs -array-add `defaults r ...

  9. 一行命令解决 xcode升级新版本插件失效问题

    sudo find ~/Library/Application\ Support/Developer/Shared/Xcode/Plug-ins -name Info.plist -maxdepth ...

随机推荐

  1. Git git rebase 使用

      原文:http://gitbook.liuhui998.com/4_2.html 一.基本 git rebase用于把一个分支的修改合并到当前分支. 假设你现在基于远程分支"origin ...

  2. NOI2015 软件包管理器 manager

    显然链剖 然而只询问到根的信息,不用管lca,要好些很多(虽然我没那么写) 对于安装 查询和维护到根路径 对于卸载 查询和维护子树信息 因为链剖本身是用dfs序建的线段树,所以使得查询和修改子树非常方 ...

  3. iOS开发zhiATM机的设计与实现

    // // main.m // ATM // #import <Foundation/Foundation.h> #import "ATM.h" #import &qu ...

  4. mybatis3温故

    MyBatis可以利用SQL映射文件来配置,也可以利用Annotation来设置.MyBatis提供的一些基本注解如下表所示. 注解 目标 相应的XML 描述 @CacheNamespace 类 &l ...

  5. [Angular 2] Use Service use Typescript

    When creating a service, need to inject the sercive into the bootstrap(): import {bootstrap, Compone ...

  6. STL——increment/decrement/dereference操作符

    increment/dereference操作符在迭代器的实现上占有非常重要的地位,因为任何一个迭代器都必须实现出前进(increment,operator++)和取值(dereference,ope ...

  7. npm scripts 助力前端开发,实时刷新浏览器

    用browser-sync或者lite-server来监控文件的改变,当文件改变时,就自动刷新浏览器. 用node-sass来实时编译scss文件. 用parallelshell来异步执行npm sc ...

  8. POJ 1986(LCA and RMQ)

    题意:给定一棵树,求任意两点之间的距离. 思路:由于树的特殊性,所以任意两点之间的路径是唯一的.u到v的距离等于dis(u) + dis(v) - 2 * dis(lca(u, v)); 其中dis( ...

  9. 13个简单有用的android开发代码

    1:查看是否有存储卡插入 String status=Environment.getExternalStorageState(); if(status.equals(Enviroment.MEDIA_ ...

  10. sql server identity限制

    identity属性是依赖于表的,它不是一种独立的序列机制,不能随意使用它生成新值. 标识值是在insert语句执行时生成的,不是在执行之前生成的. identity属性是以异步的方式分配标识值.这意 ...