2009-04-04 3 views
15

У нас есть продукт, разработанный для Windows в течение многих лет. Продукт состоит из одного рабочего пространства Eclipse и около 20 проектов. В Windows мы просим каждого разработчика проверить проекты в каталог d: \ dev \ product и скопировать объединенную рабочую область в d: \ dev \ prod_workspace. Таким образом, всякий раз, когда устанавливается новая машина, мы просто копируем файлы в одну и ту же папку, и мы можем начать работать немедленно.Как передать рабочее пространство Eclipse и проект из Windows в Linux и Mac

Теперь нам нужно перенести нашу среду разработки на Linux и Mac. Но в Unix нет D: \. И домашняя папка для Linux в основном похожа на/home/username и/Users/username для Mac. Мы обнаружили, что Eclipse сохраняет абсолютный путь в рабочей области при обращении к проектам, поэтому просто копировать рабочее пространство больше не работает. Даже когда мы вручную создаем/настраиваем рабочее пространство на Linux-машине, оно по-прежнему не может быть скопировано другому пользователю, поскольку абсолютный путь изменяется.

Я думаю, наша цель - обеспечить легкую настройку среды разработки. Есть ли у вас предложение перемещать рабочее пространство eclipse?

+1

Я надеюсь, что также возможно синхронизировать плагины Eclipse между одной платформой и другой - я до сих пор не нашел решения этой проблемы. –

ответ

3

Я разрабатываю продукт на базе Eclipse для Mac и WIndows (не пробовал Linux).

Решение, которое, как мне показалось, работает лучше всего, - это фактически запустить и вручную проверить проекты в рабочей области на каждой машине непосредственно из исходного элемента управления. Хотя структура проекта действительно конвертирует между платформами, любые приставки, такие как элементы управления версиями, не используются. Я не уверен, почему, но я думаю, что у каждой вещи есть свои перегибы. Возможно, вы сможете немного ускорить работу, создав рабочий набор проекта (или, как он называется, я думаю, это файл PSF) для платформы, а затем повторно использовать его на всех платформах.

Другая проблема заключается в том, что версии Eclipse не совместимы на 100%. Одна из проблем, с которыми я сталкиваюсь, - это файлы манифеста для плагинов, которые имеют разную семантику (например, что делать с экспортированными пакетами, которые на самом деле не существуют) на каждой платформе, вызывая головную боль.

Наконец, не забудьте, что Java на Mac и ПК не идентичны. Фактически, Eclipse имеет две версии для Mac. Обычно я в конечном итоге работает и компиляции на Java 5 на макинтош, который имеет некоторые несовместимости с Java 6.

+0

Так как OSX 10.6, я думаю, доступен только Java 6 (по крайней мере, простым способом), но он работает корректно. Но я думаю, самым простым решением является перепросмотр проектов (или использование командных наборов проектов). –

0

я могу думать о двух способов сделать это:

  1. переменные Использование рабочей области в Eclipse, чтобы указать к тому месту, где находится рабочее пространство, если вам это нужно. Затем разработчик может помещать все в рабочую область в Windows, Unix, независимо от того, а затем определить переменную, и вы закончили, или
  2. Если компиляция всегда выполняется из Eclipse, это означает, что вам действительно не нужны абсолютные пути в любом месте , затем смените проекты на все используемые относительные пути и проверьте пути Eclipse и т. д. в исходный элемент управления. Таким образом, когда разработчик проверяет все в Eclipse, путь к классам и файл .project будут на корневом уровне в проекте, и все пути будут предварительно определены.

Для варианта № 2, вам, возможно, придется иметь несколько .project или .classpath файлов, и есть разработчик скопировать подходящую в ячейку. То есть скопируйте .classpath.win в .classpath для использования Eclipse.

3

Я портирована моего проекта Eclipse с Windows XP Чтобы RHEL (никогда не пробовал Mac)

Ваша задача может быть выполнена в следующих шагов: -

  1. Использование рабочей области переменные в коде проекта, а не абсолютный путь.
  2. Сдвиньте свое рабочее пространство в какое-либо место в linux as/Workspace или, если вы хотите, чтобы пользовательский указатель делал папку рабочей области как/home/user_name/Workspace.
  3. Существует возможность изменить все окна Windows в/в Linux. Этот параметр можно найти в меню файла в eclipse.
  4. Измените настройки того, где искать каталоги классов, параметры можно найти, просто щелкнув правой кнопкой мыши по меню проекта на панели просмотра проекта.
  5. Существует возможность построить проект с чистого листа. Вам просто нужно щелкнуть по опции, и затмение будет перекомпилировать проект.

Как только все это будет сделано, и все соединения с базой данных были успешно перенесены в Linux, у вас также будет рабочий проект, работающий в Linux.

0

Если вы просматриваете проекты из исходного репозитория, рассмотрите возможность использования Team -> ProjectSets для их обработки.

Предпочтения могут быть сохранены в файле и загружены.

Мы пробовали переменные классов и ненавидели их. Теперь у нас просто все в одном проекте в исходном репозитории.

+0

У меня нет опции Team -> ProjectSets для подрывного svn в eclipse helios. Это только для cvs? – user77115

+0

Я не знаком с svn в Eclipse. Возможно, этого не будет. –

0

Поделюсь собственное решение:

Zip рабочего пространства. Просто запишите весь файл и передайте его. Затем все, что вам нужно сделать, это удалить ссылку на привод по умолчанию: D:\ ... или все, что попадает в начало имени вашего файла. Затем все, что вам нужно сделать, это перетащить его на новое пустое рабочее пространство на недавно загруженном Eclipse.

0

Используйте Workspace Preference Transferrer plugin

Это позволяет переносить настройки рабочего пространства из заданного рабочего пространства в другое с помощью новых опций в диалоговом окне "Переключение рабочих.

Смежные вопросы