plugins - El plugin no funcionó en xcode 5.1
xcode5.1 (6)
He actualizado xcode a la versión 5.1. Y todos mis plugins no funcionaron.
No vi ningún registro de errores cuando los instalé de nuevo.
¿Cómo puedo detectar el resultado de la instalación de procesamiento?
Estoy usando
Alcatraz.xcplugin
CocoaPods.xcplugin
KSImageNamed.xcplugin
XAlign.xcplugin
Creo que hay un problema con xcode 5.1 porque todos mis complementos todavía funcionan en xcode 5.0.1
Basado en lo que dijo Tuan Do (¡GRACIAS!):
- navegue a su carpeta de complementos (
library/Application Support/Developer/Shared/Xcode/Plug-ins
) - Haga clic derecho en el plugin y seleccione Mostrar contenido del paquete
- Abra el archivo info.plist y busque los IDUs de DVTPlugInCompatibility y expanda esa sección.
- Haga clic en el botón + y pegue el UUID desde arriba.
- Guarde el archivo y reinicie Xcode.
- Tus plugins aparecerán de nuevo.
Repita para cualquier complemento.
Xcode 6 UUID
C4A681B0-4A26-480E-93EC-1218098B9AA0Xcode 6.2 UUID
A16FF353-8441-459E-A50C-B071F53F51B7Xcode 6.3 UUID
9F75337B-21B4-4ADC-B558-F9CADF7073A7Xcode 6.3.2 UUID
E969541F-E6F9-4D25-8158-72DC3545A6C6Xcode 7.3 UUID ACA8656B-FEA8-4B6D-8E4A-93F4C95C362C
¿Cómo encontrar el UUID?
Abre la Terminal y pega lo siguiente:
defaults read /Applications/Xcode.app/Contents/Info DVTPlugInCompatibilityUUID
Creé un script de shell simple que agrega los UUID suministrados a todos los complementos instalados:
#!/bin/bash
cd "${HOME}/Library/Application Support/Developer/Shared/Xcode/Plug-ins"
for plugin in *.xcplugin; do
/usr/libexec/PlistBuddy -c "Add :DVTPlugInCompatibilityUUIDs: string $1" "${plugin}/Contents/Info.plist"
done
Cuando eso suceda, salga de XCode, abra la Terminal y escriba:
tail -f /var/log/system.log
luego abre XCode de nuevo. Si hay un problema de compatibilidad con cualquier complemento, verá un registro como este:
[MT] Carga de plugin: compatibilidad de plug-in requerida UUID C4A681B0-4A26-480E-93EC-1218098B9AA0 para el plug-in en la ruta ''~ / Library / Application Support / Developer / Shared / Xcode / Plug-ins / Lin.xcplugin'' no presente en DVTPlugInCompatibilityUUIDs
Entonces, lo que tiene que hacer para solucionar los problemas de compatibilidad es simplemente agregar los UUID registrados a los archivos Info.plist de los complementos rotos, agrupados en clave DVTPlugInCompatibilityUUIDs (en el ejemplo anterior, C4A681B0-4A26-480E-93EC-1218098B9AA0 )
Probablemente estará haciendo esto en cada nueva versión de XCode ya que Apple no admite los complementos oficialmente.
Debe agregar el UUID actual de XCode en DVTPlugInCompatibilityUUIDs para hacer que el complemento funcione, use este comando:
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.plist DVTPlugInCompatibilityUUID`
-
find
cada plugin de Info.plist -
default read
UUID actual de XCode -
default write
UUID actual dedefault write
de XCode en DVTPlugInCompatibilityUUIDs
Edité el archivo Info.plist como este:
Agregue A2E4D43F-41F4-4FB9-BB94-7177011C9AED
en la clave DVTPlugInCompatibilityUUIDs
Funciona para CocoaPods, complemento de Dash. Estoy tratando con los demás.
¡Espero que funcione para ti!
Fuente: https://github.com/omz/Dash-Plugin-for-Xcode/commit/989b3aad46f5a30efacd7c23432ce7343d84cc58
He escrito una extensión de editor para resolver este problema. Ahora puedes corregir este error con un simple clic.
Enlace de descarga: Dropbox