Eclipse: Чи слід створювати робочу область для кожного проекту?


80

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

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


Я виявив, що для мене добре працює використання робочої області для кожної гілки вихідного коду. Якщо вам потрібно знаходитись у декількох місцях у даній гілці, тоді може бути корисно мати їх і в окремих робочих областях.
Thorbjørn Ravn Andersen

Відповіді:


29

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

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


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

28

Я створюю робочі простори Eclipse навколо продуктів, тому що для мене продукт може мати в собі кілька проектів, наприклад, наприклад, мати основні бібліотеки, скомпільовані в одну банку в проекті, це використовується іншими проектами.

Що стосується виробничого середовища, ви хотіли б, щоб продукти працювали в різних структурах каталогів, набагато чистішими. А в eclipse робоча область створює каталог з іменем робочої області. Отже, створюйте робочі простори на основі продукту / програми, а не одного або декількох проектів у них.


1
Чи додаєте ви весь робочий простір до керування джерелом як один початковий імпорт / реєстрація?
Зомбі

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

1
А як щодо оновлення Eclipse? Ви створюєте нову робочу область та імпортуєте проект? (Можливо, це має бути новим запитанням ...), - запитую я, тому що зіткнувся з проблемами після оновлення від Indigo, Helio, Juno, тепер Kepler, і тому створити нову робочу область для кожного. Дуже незручно.
dfdumaresq

3
Коли ви оновлюєте Eclipse, спершу створіть резервну копію робочої області в окрему папку та спробуйте відкрити існуючу робочу область за допомогою нової Eclipse (Kepler є останньою, на мою думку). Якщо він працює добре, тоді ви добре для нормального розвитку, інакше ви можете створити нову робочу область для нової версії eclipse. Проблеми, про які ви згадали, ретельно їх
налагодьте

6

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

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


6

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


3

Я б використовував окремі робочі простори для різних "груп" проектів. Наприклад, вам може знадобитися поєднати ваш основний проект програми І проект модульного тестування разом в одній робочій області.


Цікаво .. Я насправді помістив папку джерела модульного тесту в той же проект.
Зомбі

@Zombies: Наприклад, у мене є проект Android та проект Android Test в тій самій робочій області. Тестовий проект просто потребує посилання на фактичний додаток.
Брайан Денні,

3

Можливо, мені не пощастило, але Eclipse часто (скажімо, раз на місяць) вмирає під час запуску, як правило, на етапі "Ініціалізація інструментів Java". Здається, рекомендується рішення створити нову робочу область. Якщо у вас є всі ваші проекти в одній робочій області, це може нашкодити. Я думаю, що менші робочі простори можуть означати, що з меншою ймовірністю відбудеться аварія.


Хороший момент, я ризикую зіпсувати все таким чином. Це як жива дихаюча екосистема коду майже.
Зомбі

2
Ви використовуєте контроль версій, чи не так?
meriton

Може бути добре для деяких. Широкосмуговий зв'язок в Австралії на десять років відстає від "розвиненого" світу ...
Джон,

6
Вам не потрібен доступ до Інтернету, щоб мати контроль версій, особливо якщо ви використовуєте якусь розподілену систему, таку як git або mercurial.
Bad Sector

3

Оскільки Налаштування стосуються робочої області, у мене, як правило, відкрита величезна робоча область - я лінуюсь синхронізувати деякі налаштування між робочими областями (наприклад, сховища ...).

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

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


1
Це теж мій підхід. Я зберігаю лише одну робочу область для всіх своїх проектів Java. Кілька з них залежать від інших проектів, тому це зручно, і у мене є робочі набори для кожного з них. Однак я, як правило, закриваю ті, з якими я не працюю активно - робить речі більш керованими.
elduff

3

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

Дійсною чудовою функцією для нас було, коли Team -> Project Sets були додані (в Eclipse 3.3, я вважаю), оскільки це дозволило нам мати один файл, що описує безліч проектів, що складають цілу програму, які можна імпортувати в Eclipse разом з Team -> Імпорт. Потрібен заданий проект? Перевірте його з CVS, знайдіть у ньому файл projectSet.psf та імпортуйте ТО.

Це виявилось добре для нас.


Зверніть увагу, з тих пір ми перейшли на maven, що значно полегшує управління кількома взаємопов’язаними проектами.
Thorbjørn Ravn Andersen

3

У мене є одна робоча область для кожного типу проекту. Приклад: Звичайна Java, веб-програма, Python тощо.

Причиною тому, що я можу ділитися схожими бібліотеками, не копіюючи та не вказуючи на них. Крім того, я закриваю не пов’язані між собою проекти від затемнення, щоб уникнути безладу.


2

У мене всі проекти в одній робочій області та використовую робочі набори для управління ними.


1

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


1

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


В OSX будь-який пакет додатків, відкритий за допомогою команди open (саме так це робить finder), дозволить лише один запущений екземпляр. Однак запустити з командного рядка Eclipse.app/Contents/MacOS/eclipse, тоді ви можете запустити кілька копій
мммммм

1

Мені подобається використовувати кілька нерозв'язаних робочих областей (які відрізняються залежно від типу проекту), які імпортують проекти з різних місць. Легко переміщати речі, не створюючи масу подібних робочих просторів. Грає добре з моїм SCM теж.


1

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

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