Настройка персонального рабочего пространства (Java): что мне нужно?


Я хочу создать личное рабочее пространство на своей домашней машине. Я в основном намерен использовать его для разработки Java на домашних проектах. Какие инструменты вы рекомендуете мне использовать? (Я предпочитаю бесплатные инструменты, так как это только для домашнего использования.)

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

Я также надеюсь получить некоторую информацию о возможности перемещения между предлагаемыми инструментами (например, миграция между CVS и SVN) и даже между операционными системами, если это применимо. (В настоящее время я использую Windows Vista, но, возможно, вскоре захочу перейти на Linux.) Может быть, даже информация о том, как легко было бы переместить проект в репозиторий с открытым исходным кодом (например, SF.net).

Спасибо.

(P.S. любые комментарии о том, как улучшить / прояснить мой вопрос, более чем добро пожаловать.)

5 2

5 ответов:

Вопрос слишком общий, но позвольте мне попробовать:

Netbeans или Eclipse IDE. Если вы занимаетесь разработкой графического интерфейса, я предлагаю Netbeans, в противном случае идите на eclipse.

Git или Mercurial как VCS. Если вы имеете дело с большой базой кода или если вы копаетесь в философии UNIX, перейдите на Git. Если вы не хотите иметь дело с различиями между ОС, перейдите на Hg.

Любая из этих IDE обеспечивает интеграцию с системой управления версиями, так что вы просто находитесь в поиске google от оно.

Что касается opensource, если вы используете Git, просто нажмите на github. Если вы используете Hg, нажмите на bitbucket, и все готово.

Для отслеживания проблем я предлагаю вам разместить Redmine (RoR app), который интегрируется с CVS, SVN, Git, Mercurial и некоторыми другими.

Если вы выберете Eclipse, вы можете интегрировать его с Mylyn.

В пространстве свободных инструментов Eclipse и NetBeans являются основными конкурентами IDE. Идея также доступна бесплатно для разработки с открытым исходным кодом, и многие люди клянутся в этом. В зависимости от вашего фона, вы можете найти NetBeans более интуитивным, чем Eclipse. У Eclipse есть определенный способ смотреть на мир, который немного отличается от многих других IDE, особенно если вы исходите из фона Visual Studio. Все три имеют хорошую встроенную поддержку CVS и SVN, а также интегрированную отладчики.

Лично мне нравится затмение. Я нахожу его гораздо более отзывчивым и более мощным, чем NetBeans. Однако за последние несколько лет NetBeans добилась значительного прогресса.

Если вы собираетесь заниматься разработкой Swing, я бы сказал, что графический редактор в NetBeans лучше, чем что-либо доступное в Eclipse. В области разработки веб-сервисов я также добился гораздо большего успеха с NetBeans. Для прямого кода Java я все же предпочитаю Eclipse.

Вопрос о перемещение между системами управления версиями-это отдельная проблема от среды разработки, на мой взгляд. Переместите код, а затем проверьте свежую копию с нового сервера.

Я использую следующие инструменты и был счастлив, перемещаясь между Windows/OS X/Linux без проблем:

IDES

  1. Eclipse 3.4 IDE. Множество отличных бесплатных плагинов. Его немного медленно, как IDE, но я предпочитаю его NetBeans
  2. NetBeans - еще одна бесплатная IDE, имеющая множество плагинов.

Контроль Версий В основном люди используют сейчас SVN, CVS или, возможно, GIT.

  • SVN для управления версиями - он более зрелый и теперь кажется больше в использовании, чем резюме. Имеет хорошую интеграцию с Eclipse. Однако с точки зрения sourceforge я думаю, что он все еще использует CVS, хотя есть и другие хостинги с открытым исходным кодом, которые, вероятно, используют SVN.

  • CVS все еще хорошая поддержка, хотя многие люди переезжают в SVN

  • Git я сам не использовал его, хотя слышал, что он набирает большую тягу и более мощный, чем SVN.

Отслеживание Проблем

  • Я использую Mantis, который на самом деле основан на PHP один. Его ок не великий.

  • Бугзилла

  • Trac

Управление Версиями

Я бы рекомендовал SVN над CVS, хотя распределенные инструменты отслеживания версий, такие как Git и Mercurial, кажутся очень популярными среди проектов с открытым исходным кодом.

Импорт в публичный репозиторий должен быть легким; если вы не хотите хранить историю ревизий, просто "экспортируйте" чистую копию репозитория и верните ее в новый.

Если вы хотите сохранить историю ревизий, существуют инструменты для клонирования репозиториев, хотя преобразование из одного типа в другой может быть более сложным.

Отслеживание ошибок

Самая известная система, возможно, Bugzilla-это единственная, которую я сам использовал на локальной системе. Другие, возможно, порекомендуют лучший трекер для одного человека. Bugzilla размещается на базе данных MySQL, поэтому вы должны быть в состоянии переместить его на другой сервер достаточно легко. Однако для перемещения между системами отслеживания ошибок может потребоваться более сложный сценарий.