Як я можу поділитися налаштуваннями запуску / відлагодження IntelliJ між проектами?


144

У мене є багато різних версій свого додатка. Кожен з них є окремим проектом Intellij. Щоразу, коли я відкриваю нову, список конфігурацій починається порожнім:

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

Прикра це в тому, що я розгортаю до 1 вм і мені потрібно копіювати та вставляти конфігурації налагодження кожного разу, коли я хочу протестувати іншу версію. Intellij робить цей діалоговий модальний для кожного екземпляра Intellij, тому я не можу копіювати та вставляти поля між Проектами.

У кінцевому підсумку я роблю скріншот однієї конфігурації та копіюю поля вручну в інший проект. Це досить примітивне рішення. Чи є більш зручний спосіб отримати конфігурацію запуску від одного проекту до іншого?

Я використовую Intellij 13 в Windows 7.


Чи можу я поділитися налаштуваннями IntelliJ Idea для різних проектів? може відповісти на це, але питання інше. Йдеться про компонування вікон. Тому я не вважаю це дублікатом.



Створили для цього квиток . Ідіть голосуйте!
Eyal Roth

Відповіді:


186

Найкращий спосіб зробити це - натиснути галочку "Поділитися" біля поля Ім'я під час редагування / створення конфігурації. Ви можете дістатися до цього діалогового вікна за допомогою Run> Edit Configurations.

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

Відмітка "Спільний доступ" витягує налаштування з вашого workspace.xmlі замість цього ставить його в каталог .idea\runConfigurations. Це розроблено, щоб ви могли поділитися налаштуваннями з іншими. Ви можете скопіювати цей файл і розмістити його в тому самому місці у всіх своїх ідейних проектах.

Однак у майбутньому ви можете скористатися гілками управління джерелами для версій додатків, а не для окремих проектів. IntelliJ дуже добре справляється з цим.


1
"Ви можете розглянути можливість використання гілок управління джерелами для версій додатків, а не для окремих проектів" Як це працює? Мене хвилює, що 20-кратні вихідні файли змусять Intellij працювати повільніше. Це розглядає лише один за одним?
Даніель Каплан

2
@tieTYT Так. Як працює гілка управління джерелом, це те, що вона редагує всі ваші локальні файли, щоб відповідати гілці. Потім ви перемикаєте гілки, це робить це знову. У вас менше місця, яке використовується у вашій локальній файловій системі. Ось добре прочитане для вас: git-scm.com/book/en/Git-Branching-Basic-Branching-and-Merging
Нік Гумріч

2
@tieTYT В основному на локальній машині одночасно існує лише одна гілка. Коли ви хочете працювати над іншою версією, джерело управління змінює його на цю версію для вас. У вас не буде "20x вихідних файлів", оскільки у вас є лише 1x одночасно.
Нік Гумріч

Ах, добре в роботі ми використовуємо SVN. Як сказано, я використовую міст Git-SVN локально. Я ніколи не переходив на іншу галузь SVN від цього, хоча. Я здогадуюсь, я спробую.
Даніель Каплан

2
@jay ви завжди можете додати файл, щоб він не був виключений у вашому .gitignore. !.idea/runConfidurations/name
Нік Гумріч

42

Запущені конфігурації за замовчуванням зберігаються у .idea / workspace.xml. Перша альтернатива - поділитися цим файлом, але це неможливо, оскільки ви також маєте багато непотрібних конфігурацій. Як уже було сказано, перший крок - це перевірити параметр "поділитися", щоб відокремити конфігурації запуску від робочої області.xml.

диспетчеризація конфігурацій запуску з робочої області.xml

Після цього я рекомендую додати runConfigurations до керування джерелом. Але головна проблема - це, ймовірно, ви вже позначили папку .idea як ігноровану. Ви можете скасувати ігнорувати папку, налаштувавши систему керування джерелом. Наприклад, якщо ви використовуєте git, ви можете змінити .gitignore файл таким чином:

.idea/*
!/.idea/runConfigurations

не забудьте додати * після .idea /

Як останній крок, додайте конфігурації запуску до керування джерелом і насолоджуйтесь спільними конфігураціями!


Це правила, це саме те, що я хотів знати, тому що насправді ми ігнорували .idea, і не було можливості його знехтувати без великих головних болів.
Девід Манн

Дивовижно! Це те, що я довго шукав.
Йонас Грьогер

1
Для моєї команди розміщення конфігурацій Run у VCS - це не варіант. Конфігурації Run містять значення - наприклад, шляхи -, що відрізняються між користувачами. Що мені потрібно - це обмін конфігураціями Run серед моїх власних проектів, а не серед членів команди.
Іван даль Боско

18

йти до

Run > Edit Configuration > create or select existing configuration you want to use > click save and persist it on file system > click on share check mark

тепер скопіюйте цей файл з

 PROJECT_ROOT_DIRECTORY/.idea/runConfigurations/ConfigurationName.xml

на вашому NEW_PROJECT_ROOT_DIRECTORY/.idea/runConfigurationsтому самому місці, і це тепер доступно для вашої конфігурації запуску


Я думаю, ви повинні перевірити Поділитися спочатку, як сказав Хамдінгер
Даніель Каплан

14

Ви повинні скопіювати папку

~/your-old-project/.idea/runConfigurations 

до

~/your-new-project/.idea/

Це папка, яка містить конфігурації запуску.


5
Я вважаю, що вам потрібно налаштувати їх на "спільне використання" спочатку, як це описано у прийнятій відповіді.
Мухд

0

Це не зовсім відповідь на ваше запитання, але він відповідає на питання, подібне до вашого, яке я мав, і я припускаю, що і інші.

Тобто, як зберегти конфігурації тестового запуску одиниць та приладів? Я, як правило, клацніть правою кнопкою миші на тестовому каталозі, який відображає меню з можливістю запустити все, що є в цьому каталозі. Потім AndroidStudio створює конфігурацію запуску на ходу, і у спадному меню Запустити конфігурацію з’явиться нова опція "Зберегти нову конфігурацію?" чи щось подібне.

Якщо натиснути цю опцію, відкриється меню Запустити конфігурацію, і в цей момент я перевіряю поле Share, як і багато інших, про які вже згадувалося. Після цього система керування версіями запропонує запитати мене, чи хочу я додати цей новий файл конфігурації запуску. Якщо ви не зареєстрували систему управління версіями, ви можете знайти нові файли під .idea / runConfigurations.

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