Запустите два экземпляра IntelliJ IDE

126

Что ж, мой вопрос довольно прост: как мне запустить два экземпляра IntelliJ (версия сообщества). Когда у меня запускается один экземпляр, и я пытаюсь запустить другой, все, что происходит, - это фокус на моем запущенном экземпляре.

Я разрабатываю приложения для Android с использованием IntelliJ.

Есть предположения?

Феликс
источник
1
Вы пытаетесь открыть два проекта или один проект дважды?
Рэйчел
Попытка открыть диалог настроек двух проектов одновременно и разместить их рядом.
Марк Иеронимус
2
Немного поздно, но просто откройте новый проект, используя «Файл -> Открыть». Он спросит вас «Это окно» или «Новое окно»
VarunAgw

Ответы:

83

Вам необходимо настроить каждый экземпляр для использования его собственных папок для расположения config / plugins / system, отредактировав idea.propertiesфайл в Windows / Linux и Info.plistMac. Вы можете найти подробности в FAQ .

Обратите внимание, что обычно в этом нет необходимости, поскольку вы можете открыть несколько проектов в разных фреймах IDEA в одном экземпляре, используя File | Открыть или Открыть недавнее .

CrazyCoder
источник
4
Да, я тоже этим занимаюсь, если мне нужно открывать разные проекты. Хотя я всегда удостоверяюсь, что у меня открыт для выступления только один экземпляр. Хотя вы не можете открыть один и тот же проект дважды, я прав @CrazyCoder?
MalsR
Вы не можете открыть один проект дважды в одном экземпляре, но это возможно при запуске нескольких экземпляров.
CrazyCoder
Танки за отличный ответ, я обычно использую Visual Studio, поэтому я не знаю IntelliJ.
Феликс
1
Если вы работаете в среде IDE, имеет смысл иметь один экземпляр и открывать проекты в разных окнах, но если вы запускаете IntelliJ в автономном режиме из командной строки, вам потребуется более одного экземпляра. Git-hook, который я написал, проверяет ошибки кода в проекте перед фиксацией, и он не будет работать, если моя IntelliJ IDEA открыта.
Gokhan Arik
5
Это не помогает, когда модальные диалоги блокируют оба окна, эффективно создавая диалоги в единственном экземпляре. Таким образом, вы не можете, например, сравнивать свойства конфигурации между двумя разными проектами. Очень обидно.
Джефф Меркадо
93

Нажмите Ctrl+ Alt+S

Выбрать Appearance & Behavior, затем System Settingsпроверьте переключатель: Open project in new window.

введите описание изображения здесь

До Нху Ви
источник
Отличный ответ, точно описывает, о чем был вопрос, простой и точный.
irshad.ahmad
3
Единое окно не подразумевает единственного экземпляра.
Джей Карлтон
3
См. Комментарий @JeffMercado в другом ответе: если вы поместите два проекта рядом и откроете модальное диалоговое окно (например, настройки) в одном, другие окна также будут полностью заморожены. Так что это не совсем решение.
Тино
3
Это не откроет тот же проект в другом окне, если этот проект уже открыт.
JoeTidee
15

Файл-> Настройки-> Общие и в разделе «Запуск / Завершение работы» установите флажок «Подтвердить окно для открытия проекта в».

Г-н Д.И.
источник
Отлично, вот что я ищу.
eric2323223
20
Это только заставляет IJ открывать новое окно , а не новый экземпляр
geronimo
Он изменился в 2018 году. Теперь ссылкаhttp://www.jetbrains.com/help/idea/system-settings.html
Dr Deo
10

У CrazyCoder примерно правильная идея. Однако одной настройки файла конфигурации было недостаточно для запуска нескольких экземпляров. Вот мои шаги, чтобы добиться этого (я уверен, что в GNU / Linux вы сможете найти эквивалент в других системах):

  1. Создайте папку / каталог для каждого экземпляра, который вы хотите запустить.

    mkdir -p ~/idea/instance-0
    
  2. Перейдите в каталог установки (например, / opt / intellij) и скопируйте файл idea.properties (в bin) в каталог вашего экземпляра.

    cp /opt/intellij/bin/idea.properties ~/idea/instance-0/
    
  3. Скопируйте еще 3 каталога: system, plugins и config. Я настоятельно рекомендую делать это без запущенного экземпляра

    cp -r /opt/intellij/system ~/idea/instance-0/
    cp -r /opt/intellij/plugins ~/idea/instance-0/
    cp -r /opt/intellij/config ~/idea/instance-0/
    mkdir ~/idea/instance-0/log
    
  4. Откройте файл idea.properties и обновите конфигурации для своих каталогов:

    #---------------------------------------------------------------------
    # Uncomment this option if you want to customize path to IDE config folder. Make sure you're using forward slashes.
    #---------------------------------------------------------------------
    idea.config.path=${user.home}/config
    #---------------------------------------------------------------------
    # Uncomment this option if you want to customize path to IDE system folder. Make sure you're using forward slashes.
    #---------------------------------------------------------------------
    idea.system.path=${user.home}/system
    #---------------------------------------------------------------------
    # Uncomment this option if you want to customize path to user installed plugins folder. Make sure you're using forward slashes.
    #---------------------------------------------------------------------
    idea.plugins.path=${user.home}/plugins
    #---------------------------------------------------------------------
    # Uncomment this option if you want to customize path to IDE logs folder. Make sure you're using forward slashes.
    #---------------------------------------------------------------------
    idea.log.path=${user.home}/log
    
  5. Теперь вы можете запустить IntelliJ с новой настройкой:

    IDEA_PROPERTIES=~/idea/instance-0/idea.properties /opt/intellij/bin/idea
    

Очевидно, вы, вероятно, захотите поместить команду в файл сценария для вызова. Мне кажется, это работает.

Magice
источник
Это работает, но убедитесь, что вы используете конкретное имя переменной экспорта env: IDEA_PROPERTIES, STUDIO_PROPERTIES, PHPSTORM_PROPERTIES, WEBIDE_PROPERTIES и т. Д. И убедитесь, что вы не используете короткие каталоги: "~ /" вместо "/ home / myname"
JoniJnm
4

В соответствии с инструкциями Jetbrains вам нужно будет перейти на страницу «Общие» диалогового окна «Настройки» и выбрать «Открыть проект в новом окне». Затем приступайте к открытию проекта, как обычно. Затем IntelliJ должен запустить совершенно новый экземпляр.

Гарри
источник
1
Нет, он не запускает новый экземпляр, вместо этого текущий экземпляр управляет только вторым окном (как указано в настройке). Вы увидите разницу, если позже откроете «Настройки» в одном из этих двух окон и попытаетесь щелкнуть мышью в другом окне. С отдельными экземплярами только одно будет модальным, но здесь оба окна затронуты, так что это единственный экземпляр.
Тино
2

Есть еще один очень быстрый способ сделать это. Всегда существует EAP-версия среды IDE, и она может работать одновременно с текущей. Например, я использую AppCode 2017.2 и 2017.3 EAP параллельно.

Олчай Эрташ
источник
1

Перейдите в IntelliJ | Инструменты | Создать программу запуска из командной строки ...

Оставьте значения по умолчанию (что создает двоичный файл с именем "идея"):

введите описание изображения здесь

Теперь перейдите в командную строку.

Cd в каталог вашего проекта и введите: idea .

Это создаст каталог .idea для конфигураций IntelliJ для этого проекта, который он будет повторно использовать каждый раз для запуска IntelliJ из этого каталога.

Теперь вы можете перейти в другой каталог проекта и ввести: idea .

Предполагая, что вы оставили предыдущую IDE IntellJ открытой, теперь у вас будут открыты две IDE IntellJ, по одной для каждого проекта.

Ноты:

1) Если в вашем проекте используются переменные среды, я бы рекомендовал открыть отдельную вкладку / окно терминала для каждого проекта и установить переменные среды этого проекта перед запуском: idea .

2) В зависимости от того, что вы пытаетесь выполнить, вам может потребоваться изменить путь к классам (или такие параметры, как Project GOPATH) для каждого экземпляра IntelliJ.

L3x
источник