Absrtact: Xcode After the upgrade to open Xcode will prompt loadbundle or skipbundle, generally we choose Loadbudle,xcode plug-ins are still valid, choose Skipbundle,xcode plugin will be invalid. Someone wants to install two version of the Xcode, the later installed that will also appear plug-in failure.
I. Xcode plugin failure Reason
is not upgraded or reload after the original plugin was deleted, in fact plug-ins are still in this directory ~/library/application support/developer/shared/xcode/plug-ins. The Plug-ins fail because each plug-in is only used by the Xcode of a specific UUID, and the UUID changes after updating, and it is not working properly.
Two. Solutions
1. View the current Xcode uuid
Executing defaults read/applications/xcode.app/contents/info dvtplugincompatibilityuuid in the terminal will get a string of UUID codes. Maybe your xcode is not installed by you, but directly copy someone else's installed Xcode into your application, then the command does not get the Xcode uuid, and the following problem appears:
Another method can also get Xcode uuid, find Xcode in the application, right-click to select Display package content, find info.plist file open find Dvtplugincompatibilityuuid corresponding value is our UUID
2. Modify the plug-in's UUID to the current Xcode UUID
Find this directory ~/library/application support/developer/shared/xcode/plug-ins, find the corresponding plug-ins, right key to display the package content, Locate the Info.plist file open to find the Dvtplugincompatibilityuuids item, add a Item,value value for the previous Xcode uuid, save.
3. Restart Xcode will prompt "load bundle", "Skip bundle", here must choose "Load bundle", otherwise the plug-in can not be used. If you accidentally skip Bundle, delete the line item you just added in the plugin plist file, and restart the Xcode, and then restart the steps. The problem has been solved perfectly. Then someone will ask: If many plug-ins are invalid, do not want a change, there is no quick way, there, please see the next step.
Three. batch update plugin DVTPLUGINCOMPATIBILITYUUID commands (sudo is recommended)
This method does not apply when the terminal cannot use the command defaults read/applications/xcode.app/contents/info dvtplugincompatibilityuuid to get the UUID. The Bulk modification command is
Copy Code code as follows:
Find ~/library/application\ support/developer/shared/xcode/plug-ins-name info.plist-maxdepth 3 | xargs-i{} defaults write {} dvtplugincompatibilityuuids-array-add ' defaults read/applications/xcode.app/contents/ Info Dvtplugincompatibilityuuid '
Well, the problem is over.