xcode 的外掛程式大大豐富了 xcode 的功能,而且有了 alcatraz ,外掛程式的管理也非常容易,像我這種 vim 黨完全離不開 xvim。但是有個非常惱人的問題:一旦公升級 xcode ,外掛程式就失效!
之前 xcode 公升級到6.2的時候遇到過外掛程式失效的問題,google 之後把一段很長命令複製到 terminal 後執行一下即可,當時一看解決了,頓時覺得滿足感爆棚,自己可以拯救地球了~就沒有再深入,結果公升級到6.3時又遇到了。「同樣的招式對聖鬥士是不能使用 第二次的!」,同樣的坑對有節操的程式設計師是不能掉進去第二次的!因此這一次一定要搞清楚為什麼會這樣,以後再次遇到了如何解決。
解決辦法非常簡單:將當前版本的 uuid 加到 dvtplugincompatibilityuuids 中即可。但是外掛程式比較多(1個及以上)的情況下,乙個個的開啟修改非常無聊跟低效,作為「懶惰」的程式設計師,這時候就要用上命令列,讓重複勞動自動化。思路 為將命令分為兩部分:
通過find
命令在外掛程式目錄下找到所有外掛程式的 info.plist 檔案。
通過xargs
命令對上一步的搜尋結果進行「for 迴圈」(就這樣理解吧),針對每乙個 info.plist 檔案,利用defaults write
命令將當前版本的 uuid 加到 dvtplugincompatibilityuuids 中。
此時問題來了,挖掘機技術。。。不對,是如何獲取當前版本 xcode 的 uuid 呢?首先關掉 xcode,開啟 terminal,輸入tail -f /var/log/system.log
,再次開啟 xcode,就能看到如下 log 資訊:
可以看到,log 資訊表明 xcode 載入外掛程式失敗的原因,並且能夠看到當前版本(6.3)xcode 的 uuid 為9f75337b-21b4-4adc-b558-f9cadf7073a7
。經過 @kyrrr 的提醒,有一種更好的方式來獲取當前版本 xcode 的 uuid:通過defaults read
命令從 xcode 的 info.plist 讀取 dvtplugincompatibilityuuid。
最終的命令為:
1在 terminal 中執行上述命令就解決了外掛程式失效的問題,在外掛程式 info.plist 的 dvtplugincompatibilityuuids 中也能看到新增的 uuid 了。
Xcode 公升級後外掛程式失效問題
簡單有效的就是在終端輸入以下 參考文章 name info.plist maxdepth 3 xargs i defaults write dvtplugincompatibilityuuids array add 不過有時候會出現如下的狀況,xcode無法開啟了。囧,重灌了也不行。對於這樣的情況,...
XCode公升級後外掛程式失效的原理與修復辦法
注 xcode的外掛程式大大豐富了xcode的功能,而且有了alcatraz,外掛程式的管理也非常容易,像我這種vim黨完全離不開xvim。但是有個非常惱人的問題 一旦公升級xcode,外掛程式就失效!之前xcode公升級到6.2的時候遇到過外掛程式失效的問題,google之後把一段很長命令複製到t...
Xcode公升級後外掛程式失效的原理與修復辦法
xcode 的外掛程式大大豐富了 xcode 的功能,而且有了 alcatraz 外掛程式的管理也非常容易,像我這種 vim 黨完全離不開 xvim。但是有個非常惱人的問題 一旦公升級 xcode 外掛程式就失效!之前 xcode 公升級到6.2的時候遇到過外掛程式失效的問題,google 之後把一...