Як поділитися конфігурацією Eclipse на різних робочих просторах


130

Я використовую Eclipse (PDT) як основний IDE на різних машинах. (наприклад, вдома, ноутбука, в офісі тощо). Як я міг прагматично поділити конфігурацію Eclipse та проекту між декількома комп'ютерами? Чи повинен я їх контролювати, чи є простіший спосіб зробити це?

Як ви гарантуєте використання однакових хороших і старих навіть настільки сучасних конфігурацій усіх своїх комп’ютерів?


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

3
Старе запитання, яке я знаю, але для нащадків я вважаю цю публікацію в блозі дуже корисною: mcuoneclipse.wordpress.com/2012/04/04/… (Це не моя посада :-)
Стюарт

Завжди є ускладнення на Windows envs. Перевірка параметрів робочої області в керуванні джерелом - це не відповідь. Налаштування контролю джерела є частиною налаштувань робочої області.
chris topinka

Відповіді:


4

Насправді ви можете встановити багато специфічних для проекту параметрів, які можна перевірити в керуванні джерелами. Для невеликих проектів це працює дуже добре. Для великих проектів ми вирішили створити єдиний файл, який ми використовували для всіх наших проектів, і перевірили окремий проект "активи", який підтримував речі, необхідні розробникам, щоб почати працювати над нашим проектом. Сюди також входили такі речі, як ліцензії та інші необхідні файли.


45
Хоча це прийнята відповідь, вам обов'язково слід прокрутити вниз і подивитися на інші відповіді, оскільки вони мають додаткову інформацію.
Topher Fangio

1
@erenon - Чи можете ви позначити це як прийняту відповідь і вибрати інший, більш релевантний? Інші містять набагато більше інформації, але я не можу видалити цю відповідь, якщо вона прийнята.
Topher Fangio

176

Обмін специфічними параметрами затемнення в робочих просторах :

  1. Йти до ${old_workspace}/.metadata/.plugins/org.eclipse.core.runtime/.settings
  2. Скопіюйте все з вищевказаного каталогу в ${new_workspace}/.metadata/.plugins/org.eclipse.core.runtime/.settings

Це дозволить переконатися, що ${new_workspace}має таку ж конфігурацію, що і${old_workspace}

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


8
У мене особисто є ті папки, які є посиланнями на папку, а також профілі RSE є посиланнями. Загальну конфігурацію параметрів затемнення також можна експортувати з ide
Anton S

5
Почну з цього, але, на жаль, за межами цього каталогу є набагато більше налаштувань, які я хотів би синхронізувати.
Девід Харкнесс

@DavidHarkness: уточнюйте, будь ласка, які налаштування - де? Ви можете опублікувати відповідь тут - я запитую серед інших: "чи було б безпечно і достатньо жорсткого посилання \.metadata\.plugins\org.eclipse.core.runtime\.settings directory?" - до максимуму: це не так просто - ${old_workspace}/.metadata/.plugins/org.eclipse.core.runtime/.settingsмістить також налаштування робочої області та має інші особливості - дивіться мій аналіз тут
Mr_and_Mrs_D

Для того, щоб скопіювати папку використовувати Robocopy: stackoverflow.com/questions/472692 / ...
weberjn

1
Щоб синхронізувати їх, розгляньте Unison: cis.upenn.edu/~bcpierce/unison
Аліса Перселл

114

Інший варіант - експорт / імпорт:

  1. У наявній робочій області File->Export...->General->Preferencesвстановіть прапорець Експортувати все та виберіть файл для їх збереження (наприклад, prefs.epf)
  2. Запустіть Eclipse у новому робочому просторі, File->Import...->General->Preferencesвиберіть файл (prefs.epf), перевірте імпорт усіх

Це добре спрацювало з оригінальним автором цієї підказки: у нього було імпортовано його форматування коду, стиль коду, svn repos, налаштування jres.

Редагувати: У програмі Eclipse Juno це працює погано. Деякі налаштування мовчки не переносять такі дії, як збереження дій.


2
Також добре працює з Eclipse STS (spring Tool Suite) 3.4
рюффп

Працював над Eclipse Luna
GP Кіборг

1
Можна було б зробити і те, і те, що пікіт сказав у своїй відповіді. Сподіваюся, цього поєднання дій буде достатньо, щоб справді все експортувати .
Нікос

8

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

https://projects.eclipse.org/projects/tools.oomph


Yatta Profiles ґрунтується на Oomph / Eclipse Installer і робить обмін трохи простішим.
Бернхард Штадлер

1
@BernhardStadler Yatta не передає налаштування.
ThomasMcLeod

Yatta може запам’ятати значення переваг за замовчуванням - налаштування робочої області можна записувати за допомогою програми Preference Recorder, а для налаштувань проекту вам не потрібні додаткові інструменти, оскільки ви можете додати їх до своєї SCM. Основна цільова програма використання робочого простору розробки в один клік для команд з метою мінімізувати час налаштування, але також можлива синхронізація приватних профілів між різними комп’ютерами. Я ніколи не пробував це сам, але згідно з їх веб-сторінкою, можливо, застосовувати оновлення з онлайн-профілів, тому приватні онлайн-профілі повинні мати можливість використовувати як механізм синхронізації.
Бернхард Штадлер

7

Мені довелося працювати над декількома робочими просторами одночасно, і було багато налаштувань, які потрібно задавати кожен раз, коли я створюю нову робочу область. Я створив робочу область шаблону і створив усі необхідні параметри в робочій області шаблону. Кожного разу, коли я створюю нову робочу область, я створюю посилання {new_workspace}/.metadata/.plugins/org.eclipse.core.runtime/.settingsна пункт, на який слід вказувати {template_workspace}/.metadata/.plugins/org.eclipse.core.runtime/.settings. Отже, коли ви редагуєте будь-які уподобання в будь-якому з робочих просторів, вони будуть реплікуватись у всіх інших робочих просторах.

Я створив цей псевдонім функції у своєму .profile так, щойно я створю нову робочу область, я запускаю цю функцію в моєму командному рядку зі своїм новим ім'ям робочої області як аргументом, щоб створювалося посилання.

function eclset(){
    present_dir=`pwd`;
    cd  {parent_to_workspace}/$1/.metadata/.plugins/org.eclipse.core.runtime ; 
    rm -rf .settings ; 
    ln -s {parent_to_workspace}/template/.metadata/.plugins/org.eclipse.core.runtime/.settings .settings;
    cd $present_dir;
}

Насправді це те, що я хотів зробити теж (на windows), але є ускладнення: дивіться мою відповідь тут
Mr_and_Mrs_D

3

Станом на Eclipse Neon (і, можливо, і на Марс), ви можете скопіювати наступні два каталоги, щоб поділитися робочим столом та налаштуваннями / налаштуваннями серед різних робочих просторів:

    [workspace]/.metadata/.plugins/org.eclipse.core.runtime/.settings
    [workspace]/.metadata/.plugins/org.eclipse.e4.workbench

Це дійсно представлено в Неоні? Чи є журнал змін / readme чи інша інформація, яка підтверджує це?
Данієль

Зазвичай розробники мають власне сховище GIT і не поділяються спільно, тож список є: 1. [робоча область] /. Метадані / .plugins / org.eclipse.core.runtime / .settings - За винятком [робочої області] /. Метаданих / .plugins /org.eclipse.core.runtime/.settings/org.eclipse.egit.core.prefs 2. [робоча область] /. метадані / .plugins / org.eclipse.e4.workbench
Тімо Рійконен

2

Тут є два питання. По-перше, є визначення проекту, файли .project та конкретні параметри проекту. Особисто мені подобаються ті, хто знаходиться в моєму контролі джерел, оскільки це значно спрощує перевірку проекту та налаштування IDE.

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


1

Ви також можете скопіювати .prefs файли з ${old_workspace}/.metadata/.plugins/org.eclipse.core.runtime/.settingsпапки під назвою .settings у кореневій папці вашого проекту, а потім додати її до SVN (або CVS або ...)

Таким чином, під час оновлення налаштування будуть розподілятися для всіх розробників разом із вихідним кодом.


0

у мене була така ж проблема.

мій підхід: зберігання даних проекту в каталозі, керованому owncloud

Проект X створюється на робочій станції A, за допомогою спеціального контуру, що вказує на новий підкаталог моєї власної ієрархії Cloud. Робоча область за замовчуванням все ще зберігається у файловій системі А.

Коли я сиджу на робочій станції BI, відкрийте локальну робочу область за замовчуванням (локальна на B) та створіть новий проект, використовуючи наявні джерела в "синхронізованій" довідці ownCloud.

Просто натисніть кнопку "Оновити" кожного разу, коли ви закриєте затемнення, і у вас є поточні дані проекту. Синхронізація працює у фоновому режимі автоматично, тому будьте обережні, коли закінчите роботу над закриттям затемнення та надайте шанс ownCloud для завантаження нових файлів на сервер ownCloud.

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

У мене не було проблем із сумісністю при використанні NEON 2 (arch linux) та NEON 3 (завантаження на debian stretch) з різними JDK.

З найкращими побажаннями Армін


0

Просто скопіюйте каталоги

${old_workspace}/.metadata/.plugins

від існуючого проекту до нового.

Це добре працювало в рамках (досить простих) проектів PHP.


0

Ви можете використовувати Eclipstyle для клонування параметрів одного робочого простору перед іншими робочими просторами. Ви також можете експортувати свої налаштування та згодом їх клонувати.

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