¿Puedo tener instaladas varias versiones de Xcode?

175

¿Es posible tener más de una versión de Xcode instalada al mismo tiempo?

Si es así, publique algún consejo, truco o posible problema para tener en cuenta.

EDITAR:

La razón por la que quiero instalar varias versiones es para probar el nuevo sdk beta, pero si el nuevo Xcode tiene errores, quiero poder usar la versión anterior para mis proyectos existentes.

Dana Holt
fuente
3
Después de haber instalado ambos XCodes, tiene un icono personalizado para XCode4 para diferenciarlos fácilmente. Aquí hay un icono personalizado: qdevarena.blogspot.com/2011/04/xcode-4-custom-icon.html
Rajavanya Subramaniyan
Aquí hay un icono que hice rápido para Xcode Beta 4.2 ...:! ingrese la descripción de la imagen aquí .png archivo --- < dl.dropbox.com/u/7124872/XcodeBeta.png?dl=1 > .icns archivo --- < dl.dropbox.com/u/7124872/Xcode.icns? dl = 1 > Disfruta.
Hubert Kunnemeyer
enlace para todas las versiones de Xcode stackoverflow.com/questions/10335747/…
Honey
Vea mi respuesta para una manera mucho más fácil de hacer lo que pide. Además, si cree que esta es una mejor manera, considere marcar mi respuesta como la solución a su problema. Ciertamente creo que es una solución muy superior.
cseder

Respuestas:

95

Sí, puedes instalar varias versiones de Xcode. Se instalarán en directorios separados. Descubrí que la mejor práctica es instalar primero la versión que vino con su Mac y luego instalar las versiones descargadas, pero probablemente no haga una gran diferencia. Consulte http://developer.apple.com/documentation/Xcode/Conceptual/XcodeCoexistence/Contents/Resources/en.lproj/Details/Details.html esta página de Apple Developer Connection para obtener muchos detalles. <- ¡La página ya no existe!

MattK
fuente
13
Para aclarar, se instalarán en directorios separados solo si lo especifica explícitamente en el momento de la instalación. Además, generalmente querrá anular la selección de todas las funciones además de las herramientas principales de xcode, porque las otras no le permiten cambiar el directorio de instalación.
Paul Du Bois
77
El enlace está desactualizado. Puede obtener versiones antiguas desde aquí , pero no hay detalles sobre cómo configurarlas o instalarlas = (.
GeneralMike
1
No he tenido la oportunidad de probar esto con un Xcode reciente. Me pregunto si esto cambió con la adición de Xcode a la App Store.
MattK
44
Este enlace puede ayudarlos: iosdevelopertips.com/xcode/…
King-Wizard
Recientemente actualicé a Xcode 7, y perdí la capacidad de compilar y probar en iOS 7.1. Descargué Xcode 6.4 de developer.apple.com/downloads/index.action (según comentarios anteriores) y copié Xcode.app a /Applications/Xcode-6.4, desde el cual se ejecuta muy felizmente (según la información proporcionada en iosdevelopertips.com / xcode / ... , nuevamente según los comentarios anteriores)
Martyn Davis el
43

Es fácil tener múltiples instalaciones de Xcode.

En el instalador hay un menú desplegable para la ubicación ... solo necesita elegir una nueva ubicación cuando instala la versión beta.

Estas instrucciones de un evangelista de herramientas de desarrollo de Apple tienen todos los detalles (se requiere nombre de usuario / contraseña de desarrollador de Apple): https://devforums.apple.com/message/40847#40847

Luego obtenga un ícono personalizado para la versión Beta de XCode que está utilizando, para que pueda distinguirlos en el dock: http://iphonedevelopment.blogspot.com/2009/03/multiple-developer-tool-installs.html

Jim Rhoades
fuente
Este enlace también puede ayudarlos: iosdevelopertips.com/xcode/…
King-Wizard
36

¿Puedo tener instaladas varias versiones de Xcode?

Solución: en
realidad, como dicen muchas de las respuestas anteriores, es posible. Incluso de acuerdo con el siguiente Blog de Oracle Mobile Platform , puede instalar más de un XCodes en la misma Mac. La razón por la que necesita hacer eso puede variar según usted.

Escenario:
es posible que haya instalado solo una versión de XCode por ahora. Principalmente, la única versión detrás de la última versión de XCode que está disponible a través de App Store (la mía tengo Xcode 6.3.2 y necesitaba mantenerla y también instalar Xcode 7 que está disponible a través de App Store).

Por ejemplo: -

Ya ha instalado XCode 6.x, y App Store tiene XCode 7 ya proporcionado por App Store. Por cualquier motivo, debe mantener ese XCode 6.x anterior (como sabe que es estable desde hace algún tiempo) y también debe instalar y probar el nuevo XCode 7.

Entonces, la pregunta número uno podría ser: ¿Cómo y dónde podría descargar? el archivo DMG instalable de Mac OS X para XCode 7 (o puede serlo si quieres probar una versión anterior de XCode)? Ok, aquí está el enlace directo de descargas de Apple (es posible que deba iniciar sesión en la cuenta de desarrollador de Apple antes de ver este enlace correctamente), o bien, a continuación encontrará un enlace de preguntas y respuestas de StackOverflow que le da la respuesta de dónde descargar archivos DMG para IDC de XCode .

Entonces, supongamos que ha obtenido cualquiera de los archivos DMG para la versión XCode que necesita instalar de forma secundaria.

Pasos:
Siga los pasos que se detallan a continuación, que obtuve del primer enlace del Blog de la plataforma móvil de Oracles.

  1. Cerrar Xcode si se está ejecutando
  2. Renombrar /Applications/Xcode.appa/Applications/Xcode_6.x.app
  3. Ingrese la contraseña de administrador cuando se le solicite
  4. Haga doble clic en el archivo DMG de su Xcode requerido previamente descargado e instálelo
  5. Una vez instalado, antes de ejecutarlo, cambie el nuevo /Applications/Xcode.appque acaba de instalar (según mi ejemplo anterior)/Application/Xcode_7.app

Nota*:

[Lea pacientemente esta sección hasta la próxima Nota]. Cuando tenga instaladas dos versiones de Xcode, su estación de trabajo también tiene instaladas dos versiones de Command Line Tool ( xcodebuild). La pregunta es para qué utilizará su comando de compilación de Terminal y Xcode cuando esté compilando su aplicación iOS. Porque junto con la herramienta de línea de comandos, también depende de SDK de iOS que se está utilizando para construir su aplicación.

Mi experiencia fue que tuve dos versiones de Xcode. Xcode 10 (anterior con iOS12.0 - iphoneos12.0) y Xcode 10.1 (nuevo con iOS 12.1 - iphoneos12.1). Obviamente, la configuración de Command Line Tool se seleccionó para usar la xcodebuildherramienta de la aplicación Old. Tuve que seleccionarlo manualmente en la ventana de preferencias de Xcode.

¿Dónde configurar la herramienta de línea de comandos en la ventana de preferencias de Xcode?

  • Seleccione la Locationspestaña y allí, puede seleccionar todas las versiones instaladas de Command Line Tools (que es xcodebuild).

¿Cómo averiguar qué versión del SDK de iOS se está utilizando para construir su aplicación de iOS?

  • En su problema de Terminal siguiendo el comando: $> xcodebuild -showsdks
  • El comando anterior debe imprimir todos los detalles del SDK que utiliza su configuración actual de Xcode para construir sus aplicaciones. Y al ver los resultados, comprenderá que su versión del SDK de iOS / iphoneos depende de cambiar la xcodebuildconfiguración de la Herramienta de línea de comandos ( ) en su Xcode.

Nota **:
los enlaces de descargas de Apple dados anteriormente y los enlaces de publicación de blog de Oracles MPF pueden cambiar y / o no estar disponibles en el futuro.

¡Así que espero que mi respuesta sea útil para alguien más!
¡Salud!

Randika Vishman
fuente
@Tinkerbell ¡Es bueno saberlo! : D Puede estar en mi máquina. Podría tener una configuración conflictiva. ¡Gracias!
Randika Vishman
32

Es posible que desee utilizar el comando "xcode-select" en la terminal para cambiar entre las diferentes versiones de Xcode en las carpetas instaladas.

Eric Chan
fuente
10
Esto me ayudó a correr sudo xcode-select -s /Applications/Xcode-beta.app/Contents/Developer/para usar la versión beta de xcode, por ejemplo. ¡Gracias!
Christian Landgren
Gracias ... esta es la mejor respuesta!
Carlos Galeano
13

Parece que a Xcode realmente le gusta estar en la carpeta Aplicaciones y llamarse Xcode, especialmente cuando se usa xcodebuild(cuando se construye para Carthage, por ejemplo), y xcode-selectno siempre parece cortarlo.

Tengo un proyecto de cliente que todavía usa Swift 2.2, y estoy atascado en Xcode 7 para eso y usando Xcode 8 para cualquier otra cosa.

Entonces, en mi carpeta de aplicaciones, tengo Xcode 7 (renombrado a Xcode_7 ) y Xcode 8 (renombrado a Xcode_8 ). Luego cambio el nombre del que necesito simplemente Xcode , y de nuevo cuando haya terminado. Es un dolor de pelota, pero parece funcionar.

Este script de shell lo simplifica un poco ...

xcode-version.sh

cd /Applications

if  [[ $1 = "-8" ]]
then 
    if [ -e Xcode_8.app ] 
    then            
        mv Xcode.app Xcode_7.app
        mv Xcode_8.app Xcode.app
        echo "Switched to Xcode 8"
    else
        echo "Already using Xcode 8"
    fi
elif  [[ $1 = "-7" ]]
then
    if [ -e Xcode_7.app ] 
    then            
        mv Xcode.app Xcode_8.app
        mv Xcode_7.app Xcode.app
        echo "Switched to Xcode 7"
    else
        echo "Already using Xcode 7"
    fi
else
    echo "usage: xcode-version -7/8"
fi

xcode-select --switch Xcode.app
Ashley Mills
fuente
1
¿Ejecutar Xcode 8 y 7 en paralelo te causa algún problema?
nnrales
No he tenido ningún problema, siempre que recuerde cambiar el nombre de la versión apropiada a Xcode.app cada vez.
Ashley Mills
Gracias por la solución y el útil script. Por cierto, tuve que anteponerme sudoa la última línea para sudo xcode-select --switch Xcode.appque la parte de conmutación funcione.
Isuru
1
El uso xcodebuilddesde una versión específica de Xcode no requiere un cambio en todo el sistema de la versión predeterminada de Xcode. Configuración de la variable de entorno DEVELOPER_DIR antes de usar xcodebuildes suficiente: export DEVELOPER_DIR="/Applications/Xcode-9.3.app/Contents/Developer".
Rein Spijkerman
12

Tenga en cuenta que si utiliza la xcodebuildherramienta de línea de comandos, la última versión de Xcode instalada se convertirá en la versión predeterminada. (Se instala un enlace simbólico en / usr / bin.) Para usar el xcodebuildpara las otras versiones de Xcode, deberá usar la versión en el (xcode_install_directory)/usr/bindirectorio.

nota Para cambiar entre diferentes versiones de las herramientas de línea de comandos de Xcode, use la xcode-selectherramienta mencionada por otros comentaristas.

ThomasW
fuente
4

Mirando con Xcode 9 , el beta Xcode está etiquetado como 'Xcode-beta.app' y está diseñado para convivir con la versión de producción. Puede encontrar información en las notas de lanzamiento de Xcode aquí . (No utiliza el enlace directo porque se rompe a menudo).

De Apple:

Xcode 9 beta 4 puede coexistir con versiones anteriores de Xcode. Las versiones preliminares de Xcode están disponibles en developer.apple.com, empaquetadas en un archivo XIP comprimido. Para instalar Xcode durante el período beta, descargue el archivo XIP, haga doble clic en el archivo para expandirlo en su lugar, luego arrastre Xcode-beta.app a la carpeta Aplicaciones

bauerMusic
fuente
Una palabra de advertencia: todos mis simuladores Xcode 8 han desaparecido y no puedo agregar otros nuevos. Todo es Xcode 9 de aquí en adelante para mí (o eliminar dolorosamente todo lo que Xcode 9 estropeó durante su instalación). YMMV.
Sebastian
@ Sebastian, creo que los míos están bien (usando Xcode 8, pero tenía 9 corriendo antes). Todavía tengo la opción (Xcode> Ventana> Dispositivos) para agregar otros simuladores. Podría valer la pena abrir un nuevo tema si podemos verificarlo. ¿Puedes agregar simuladores más antiguos?
bauerMusic
otro amigo mío confirmó que también está funcionando para él. Entonces, probablemente algo está mal en mi sistema. Así que supongo que esto es sólo un "cosas podrían ir mal si cambia nada" cuento ;-) (y lo harán si no lo hace)
Sebastián
@Sebastian ¿Puedes volver a agregarlos desde 'Dispositivos'?
bauerMusic
Ayer no pude ("[...] no puedo agregar nuevos"), el botón 'Crear' en el cuadro de diálogo "Agregar simulador" no hizo nada. Sin embargo, acabo de volver a abrir mi Xcode 8 ya abandonado y había todos los simuladores que intenté crear ayer, todos trabajando. También puedo agregar nuevos. @bauerMusic, gracias por presionarme para que vuelva a verificar.
Sebastian
2

Para tener instaladas varias instancias de Xcode, puede colocarlas en diferentes carpetas, por ejemplo /Developer5.0.2/Xcode, pero para usarlas en CI o entorno de compilación (línea de comando) necesita configurar algunas variables de entorno durante la compilación. Puedes tener más instrucciones aquí . Por lo tanto, funciona no solo con la versión beta y la nueva versión, también funciona con las versiones realmente antiguas, es posible que necesite usarlo con los complementos de Marmalade o Unity, que aún no es compatible con las últimas versiones de Xcode (algunas veces sucede).

fleurdeviande
fuente
2

Instale múltiples versiones de Xcode usando Xcode-Install Ruby Gem

Puede hacer todo este proceso mucho más fácil si usa xcode-install RubyGem .

Si ya tiene una instalación funcional de Xcode CommandLineTools y Ruby (sugeriría usar Homebrew para instalar Ruby) pero creo que también funciona con el Ruby suministrado por macOS si instala la Gema usando sudo o como una instalación de usuario . (Detalles en la página de GitHub) Básicamente:

    $ gem install xcode-install
    $ xcversion list
    6.0.1
    6.1
    6.1.1
    6.2 (installed)
    6.3
    $ xcversion install 8
    ######################################################################## 100.0%
    Please authenticate for Xcode installation...

    Xcode 8
    Build version 6D570

Para seleccionar una versión como activa, ejecutará:
$ xcversion select 8

Para seleccionar una versión como activa y cambiar el enlace simbólico en / Aplicaciones / Xcode, ejecutará:
$ xcversion select 8 --symlink

xcode-install también puede administrar sus simuladores locales utilizando el comando simuladores.

Lea las instrucciones en la página del Proyecto GitHub para obtener más información.

cseder
fuente
0
  1. Primero, elimine la instalación actual de Xcode de su máquina. Probablemente pueda omitir este paso, pero quería comenzar de nuevo. Además, Xcode se estaba comportando un poco raro últimamente, así que esta es una buena oportunidad para hacerlo.
  2. Instale Xcode 8 desde la tienda de aplicaciones. Asegúrese de que los archivos del proyecto ( .xcodeproj) y los archivos del espacio de trabajo ( .xcworkspace) se puedan abrir con la nueva instalación de Xcode (recuerde seleccionar la opción Más tarde cuando se le solicite).
  3. Descargue el archivo dmg Xcode 7.3.1 de Apple. Toca dos veces el archivo dmg recién descargado para obtener el estándar "Arrastra para instalar Xcode en tu carpeta de Aplicaciones". No hagas eso. En su lugar, arrastre el ícono Xcode al escritorio. Cambie el nombre del archivo a Xcode 7.3.1. Ahora arrástrelo a la carpeta Aplicaciones.

Ahora tiene dos versiones de Xcode instaladas en su máquina. Xcode 7.3.1 y Xcode 8.

Detalles: instale Xcode 7 y Xcode 8 uno al lado del otro

katwal-Dipak
fuente
0

Independientemente de la ruta de consejos que siga, haga una copia de la carpeta de su proyecto y cambie el nombre del más externo para reflejar en qué versión de XCode se está abriendo. Su elección sobre si desea actualizar la sintaxis o no, pero la razón principal de todo esto es que tu guión gráfico se alterará con solo mirarlo. Puede resolverse cuando un nuevo lector se encuentre con esto en el futuro, o

aremvee
fuente
0

Todas las actualizaciones para la nueva versión de xcode estarán disponibles en la tienda de aplicaciones si ha instalado la versión desde la tienda de aplicaciones. Si solo pega la versión descargada, la tienda de aplicaciones mostrará instalar no actualizar. Por lo tanto, mantenga la versión estable descargada de la tienda de aplicaciones en su carpeta de aplicaciones.

Para probar nuevas versiones beta, generalmente lo pongo en una unidad separada y descomprimo e instalo allí. Esto evitará confusión mientras trabaja en una versión estable.

Para evitar confusiones, solo puede mantener la versión estable en su base y abrir la versión beta desde el punto de mira (Comando + Espacio). Esto colocará beta temporalmente en el dock. Pero se asegurará de que no edite accidentalmente su proyecto de cliente en versión beta.

Lo más importante: - Trabajar en el mismo proyecto en dos xcode diferentes podría crear algunos resultados no deseados. Como si hubiera un error en el generador de interfaces que se introdujo en ciertas versiones de xcode. Lo que rompió las limitaciones. Lo arreglaron nuevamente en el siguiente.

Haga un seguimiento de las notas de la versión para saber exactamente cuáles son las características adicionales y cuáles son los problemas conocidos.

Ashish Pisey
fuente