Чи можу я встановити кілька версій Xcode?


175

Чи можливо встановити більше однієї версії Xcode одночасно?

Якщо це так, будь ласка, опублікуйте будь-які поради, хитрощі чи потенційні проблеми, на які слід стежити.

Редагувати:

Причиною я хочу встановити кілька версій - це спробувати нову бета-версію sdk, але якщо новий Xcode є помилковим, я хочу мати можливість використовувати старішу версію для своїх існуючих проектів.


3
Після встановлення обох XCodes у вас є спеціальна піктограма для XCode4, щоб їх легко розмежувати. Ось спеціальна піктограма - qdevarena.blogspot.com/2011/04/xcode-4-custom-icon.html
Раджаванія Субраманія

Ось значок, який я швидко зробив для Xcode Beta 4.2 ...:! введіть опис зображення тут .png файл --- < dl.dropbox.com/u/7124872/XcodeBeta.png?dl=1 > .icns файл --- < dl.dropbox.com/u/7124872/Xcode.icns? dl = 1 > Насолоджуйтесь.
Хуберт Куннемейер

посилання на всі версії Xcode stackoverflow.com/questions/10335747/…
мед

Дивіться мою відповідь про набагато простіший спосіб зробити те, що ви просите. Крім того, якщо ви вважаєте, що це кращий спосіб, подумайте, як позначити мою відповідь як вирішення вашої проблеми. Я, звичайно, думаю, що це набагато чудово рішення.
cseder

Відповіді:


95

Так, ви можете встановити кілька версій Xcode. Вони встановлять в окремі каталоги. Я виявив, що найкраща практика - це встановити версію, яка поставляється разом з вашим Mac, а потім встановити завантажені версії, але це, мабуть, не має великої різниці. Докладні відомості див. На http://developer.apple.com/documentation/Xcode/Conceptual/XcodeCoexistence/Contents/Resources/en.lproj/Details/Details.html на цій сторінці підключення для розробників Apple. <- Сторінка вже не існує!


13
Для уточнення вони встановлюватимуться в окремі каталоги лише у тому випадку, якщо ви явно вказали це під час встановлення. Крім того, ви, як правило, скасуєте вибір усіх функцій, крім основних інструментів xcode, оскільки інші не дозволяють вам змінити каталог встановлення.
Пол Дю Буа

7
Посилання застаріло. Звідси можна отримати старі версії , але немає деталей, як їх встановити чи встановити = (.
GeneralMike

1
У мене не було можливості спробувати це з останнім Xcode. Цікаво, чи змінилося це з додаванням Xcode до App Store?
MattK

4
Це посилання може допомогти вам, хлопці: iosdevelopertips.com/xcode/…
King-Wizard

Нещодавно я оновив до Xcode 7 і втратив здатність створювати та тестувати на iOS 7.1. Я завантажив Xcode 6.4 з developer.apple.com/downloads/index.action (за попередніми коментарями) та скопіював Xcode.app в /Applications/Xcode-6.4, з якого він працює дуже щасливо (відповідно до інформації, наданої на iosdevelopertips.com / xcode /… , знову як за попередніми коментарями)
Мартін Девіс

43

Можна легко встановити кілька установок Xcode.

У інсталяторі є спадне місце розташування ... вам просто потрібно вибрати нове місце під час встановлення бета-версії.

У цих інструкціях від інструмента «Євангеліст Apple Apple» є повна інформація (потрібне ім’я користувача / пароль Apple Dev): https://devforums.apple.com/message/40847#40847

Потім візьміть собі власну піктограму для бета-версії XCode, яку ви використовуєте, щоб ви могли розпізнати їх у доці: http://iphonedevelopment.blogspot.com/2009/03/multiple-developer-tool-installs.html


Це посилання також може допомогти вам, хлопці: iosdevelopertips.com/xcode/…
King-Wizard

36

Чи можу я встановити кілька версій Xcode?

Рішення:
Насправді, як сказано в багатьох відповідях вище, це можливо. Навіть згідно з наступним блогом Oracle Mobile Platform , ви можете встановити більше одного XCodes в одному Mac. Причина, чому вам це потрібно зробити, може залежати від вас.

Сценарій:
Ви, можливо, наразі встановили лише одну версію XCode. Переважно один випуск за останньою версією XCode, яка доступна через App Store (у мене є Xcode 6.3.2, і мені потрібно було зберегти його, а також встановити Xcode 7, який доступний через App Store).

Для Ex: -

Ви вже встановили XCode 6.x, а в App Store є XCode 7, який вже надав App Store. З будь-якої причини вам потрібно зберегти старіший XCode 6.x (як ви знаєте, він стабільний протягом деякого часу), а також вам потрібно встановити та випробувати новий XCode 7.

Отже, питання номер один може бути, як і де ви могли завантажити файл DMG для встановлення Mac OS X для XCode 7 (або, можливо, ви хочете спробувати старішу версію XCode)? Гаразд, ось пряме посилання завантаження яблук (можливо, вам доведеться увійти в обліковий запис розробника Apple, перш ніж правильно переглянути це посилання), або ще далі - посилання StackOverflow Q&A, яке дає відповідь про те, куди можна завантажити файли DMG для ID ID XCode .

Отже, тепер припустимо, що ви отримали будь-який файл DMG для версії XCode, яку потрібно встановити як вторинну?

Етапи:
Виконайте наведені нижче кроки, які я отримав із наведеного вище першого посилання блогу Oracles Mobile Platform.

  1. Закрийте Xcode, якщо він працює
  2. Перейменувати /Applications/Xcode.appна/Applications/Xcode_6.x.app
  3. Введіть пароль адміністратора, коли буде запропоновано
  4. Двічі клацніть файл DMG потрібного попередньо завантаженого Xcode та встановіть його
  5. Після встановлення перед тим, як запустити його, змініть нове /Applications/Xcode.app, щойно встановлене (відповідно до мого вище наведеного прикладу)/Application/Xcode_7.app

Примітка*:

[Будь ласка, терпляче прочитайте цей розділ до наступної примітки] Коли у вас встановлено дві версії Xcode, ваша робоча станція має дві версії інструменту командного рядка (xcodebuild ). Питання полягає в тому, для чого використовуватимуться ваші команди Terminal та Xcode для збирання додатка iOS. Оскільки поряд із інструментом командного рядка залежить і SDK iOS, який використовується для створення програми.

Мій досвід полягав у тому, що у мене були дві версії Xcode. Xcode 10 (старий з iOS12.0 - iphoneos12.0) та Xcode 10.1 (новий з iOS 12.1 - iphoneos12.1). Тож очевидно, що параметри інструменту командного рядка були вибрані для використання xcodebuildінструменту зі старої програми. Мені довелося вручну вибрати його у вікні налаштувань Xcode.

Де встановити інструмент командного рядка у вікні налаштування Xcode?

  • Виберіть Locationsвкладку і там ви зможете вибрати всі встановлені версії інструментів командного рядка (що є xcodebuild).

Як розібратися, яка версія iOS SDK використовується для створення додатка для iOS?

  • У питанні про термінал наступна команда: $> xcodebuild -showsdks
  • Наведена вище команда повинна роздрукувати всі деталі SDK, які використовує ваша поточна конфігурація Xcode для створення ваших програм. І побачивши результати, ви зрозумієте, що версія SDK для iOS / iphoneos залежить від зміни xcodebuildналаштування інструменту командного рядка ( ) на вашому Xcode.

Примітка **:
Наведене вище посилання Apple Downloads та посилання на блог Oracles MPF можуть змінитися та / або недоступні в майбутньому.

Тож сподіваюся, що моя відповідь може бути корисною для когось іншого там!
Ура!


@Tinkerbell Добре знати! : D Можливо, у моїй машині у мене могла бути конфліктна конфігурація. Дякую!
Рендіка Вішман

32

Ви можете скористатися командою "xcode-select" в терміналі для перемикання між різними версіями Xcode у встановлених папках.


10
Це допомогло мені, запустіть, наприклад, sudo xcode-select -s /Applications/Xcode-beta.app/Contents/Developer/для використання бета-версії xcode. Дякую!
Крістіан Ландгрен

Дякую ... це найкраща відповідь!
Карлос Галеано

13

Здається, що Xcode справді любить знаходитись у папці Applications і називатися Xcode, особливо при використанні xcodebuild(наприклад, для побудови для Carthage) - і xcode-selectне завжди здається, що це скорочує.

У мене є клієнтський проект, який все ще використовує Swift 2.2, і я затримався на Xcode 7 для цього і використовую Xcode 8 для будь-чого іншого.

Отже, у моїй папці Applications я маю Xcode 7 (перейменований у Xcode_7 ) та Xcode 8 (перейменований на Xcode_8 ). Потім я перейменую те, що мені потрібно просто Xcode , і повернути знову, коли закінчите. Це бальний біль, але, здається, працює.

Цей скрипт оболонки трохи спрощує його ...

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

1
Чи паралельно запуск Xcode 8 і 7 викликає у вас якісь проблеми?
nnrales

У мене не було жодних проблем, якщо я пам’ятаю щоразу перейменовувати відповідну версію в Xcode.app.
Ешлі Міллс

Дякуємо за рішення та зручний сценарій. До речі, мені довелося додати sudoдо останнього рядка на зразок так, sudo xcode-select --switch Xcode.appщоб робота комутатора працювала.
Ісуру

1
Використання xcodebuildз певної версії Xcode не вимагає загальносистемної зміни версії Xcode за замовчуванням. Установка змінної DEVELOPER_DIR середовища перед використанням xcodebuildдосить: export DEVELOPER_DIR="/Applications/Xcode-9.3.app/Contents/Developer".
Рейн Шпікерман

12

Зауважте, що якщо ви використовуєте інструмент xcodebuildкомандного рядка, то остання версія встановленого Xcode стане версією за замовчуванням. (Символічне посилання встановлено в / usr / bin.) Для використання xcodebuildдля інших версій Xcode вам потрібно використовувати версію в (xcode_install_directory)/usr/binкаталозі.

Примітка Для переключення між різними версіями інструментів командного рядка Xcode використовуйте xcode-selectінструмент, згаданий іншими коментаторами.


4

Якщо беруть участь у Xcode 9 , бета-код Xcode позначений як "Xcode-beta.app" і призначений для того, щоб жити поряд з виробничою версією. Інформацію можна знайти в примітках до випуску Xcode тут . (Не використовується пряме посилання, оскільки воно часто переривається).

Від Apple:

Xcode 9 beta 4 може співіснувати з попередніми версіями Xcode. Попередні версії Xcode доступні на сайті developer.apple.com, упаковані у стислий XIP-файл. Щоб встановити Xcode протягом бета-періоду, завантажте файл XIP, двічі клацніть файл, щоб розгорнути його, а потім перетягніть Xcode-beta.app у папку Applications


Слово попередження: Усі мої тренажери Xcode 8 вже відсутні, і я не можу додавати нові. Це все Xcode 9 звідси для мене (або болісно видаляючи все, що Xcode 9 псується під час його встановлення). YMMV.
Себастьян

@Sebastian Я думаю, що з моїм все в порядку (використовуючи Xcode 8, але раніше працював 9). У мене ще є можливість (Xcode> Window> Devices) додати інші тренажери. Можливо, варто відкрити нову тему, якщо ми зможемо це перевірити. Чи можете ви додати старі тренажери?
bauerMusic

інший мій друг підтвердив, що він також працює на нього. Тому, напевно, щось накручено на моїй системі. Тож я здогадуюсь, що це просто казка про "речі можуть піти не так, якщо ви щось зміните" ;-) (і вони будуть, якщо ви цього не зробите)
Себастьян

@Sebastian Чи можете ви знову додати їх із "Пристрої"?
bauerMusic

Вчора я не зміг ("[...] я не можу додати нові"), кнопка "Створити" у діалоговому вікні "Додати симулятор" нічого не зробила. Однак я лише заново відкрив свій уже покинутий Xcode 8 і там були всі тренажери, які я намагався створити вчора, і всі працювали. Можу також додати нові. @bauerMusic, дякую, що підштовхнув мене до повторної перевірки.
Себастьян

2

Щоб встановлено кілька екземплярів Xcode, ви можете розмістити їх у різних папках, наприклад /Developer5.0.2/Xcode, але для їх використання в CI або середовищі побудови (командний рядок) вам потрібно встановити деякі змінні середовища під час збирання. Ви можете мати більше інструкцій тут . Таким чином, він працює не тільки з бета-версією та свіжим випуском, а також працює для дійсно старих версій, можливо, вам знадобиться його для використання з плагінами Marmelade або Unity, які ще не підтримують останні версії Xcode (іноді це трапляється).


2

Встановлення декількох версій Xcode за допомогою Xcode-Install Ruby Gem

Ви можете зробити цей весь процес набагато простіше, якщо використовуєте RubyGem для встановлення xcode .

Якщо у вас вже працює робоча установка Xcode CommandLineTools і Ruby (я б запропонував використовувати Homebrew для встановлення Ruby), але я думаю, що він працює і з Ruby, що постачається macOS, а також якщо встановити Gem або за допомогою sudo, або як встановити користувача . (Детальніше на сторінці GitHub) В основному:

    $ 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

Щоб вибрати версію як активну, запустіть:
$ xcversion select 8

Щоб вибрати версію як активну та змінити симпосилання на / Applications / Xcode, запустіть:
$ xcversion select 8 --symlink

xcode-install також може керувати вашими локальними тренажерами за допомогою команди симуляторів.

Прочитайте інструкції на сторінці проекту GitHub для отримання додаткової інформації.


0
  1. Спочатку видаліть поточну установку Xcode зі своєї машини. Ви, ймовірно, можете пропустити цей крок, але я хотів почати свіжим Плюс - Xcode поводився трохи дивно останнім часом, тому це гарна нагода зробити це.
  2. Встановіть Xcode 8 з App Store. Переконайтесь, що файли проекту ( .xcodeproj) та файли робочої області ( .xcworkspace) можна відкрити за допомогою нової інсталяції Xcode (не забудьте вибрати параметр "Пізніше", коли буде запропоновано).
  3. Завантажте файл Xcode 7.3.1 dmg від Apple. Двічі торкніться нещодавно завантаженого файлу dmg, щоб отримати стандартне "Перетягніть, щоб встановити Xcode у папці Applications". Не робіть цього. Замість цього перетягніть значок Xcode на робочий стіл. Змініть ім'я файлу на Xcode 7.3.1. Тепер перетягніть його в папку «Програми».

Тепер у вас на машині встановлена ​​дві версії Xcode. Xcode 7.3.1 і Xcode 8.

Детальніше: Встановіть Xcode 7 та Xcode 8 поруч


0

Якою б порадою ви не звертаєтесь, зробіть копію папки свого проекту та перейменуйте зовнішню найбільшу, щоб відобразити, у якій версії XCode вона відкривається. Вибираєте, хочете ви оновити синтаксис чи ні, але головна причина все це боввер у вашій раскадровці буде змінено просто дивлячись. Це може бути вирішено тим часом, коли новий читач натрапить на це в майбутньому, або


0

Усі оновлення нової версії xcode будуть доступні в appstore, якщо ви встановили версію з appstore. Якщо ви просто вставите завантажену версію, програма appstore покаже встановлення не оновлення. Отже, зберігайте стабільну версію, завантажену з appstore, у папку додатків.

Щоб спробувати нові версії бета-версії, я, як правило, розміщую її в окремому диску та розпакуйте та встановіть там. Це дозволить уникнути плутанини під час роботи над стабільною версією.

Щоб уникнути плутанини, ви можете зберігати лише стабільну версію у вашому док-станції та відкривати бета-версію під прожектором (Command + Space). Після цього бета-версія буде тимчасово розміщена на доці. Але це дозволить вам не випадково редагувати клієнтський проект у бета-версії.

Найголовніше: - Робота над одним проектом над двома різними xcode може створити небажані результати. Можливо, в програмі інтерфейсів виникла помилка, яка була представлена ​​у певній версії xcode. Що порушило обмеження. Це знову зафіксувалося в наступному.

Слідкуйте за нотами про випуск, щоб точно знати, які додаткові функції та які відомі проблеми.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.