Вопрос

Как вы гарантируете, что сможете загрузить код в Eclipse или NetBeans и работать там с ним?

Редактировать:Если вы не проверяете файлы, связанные с ide, вам придется перенастраивать buildpath, includes и все такое прочее каждый раз, когда вы проверяете проект.Я не знаю, будет ли ant (особенно файл сборки ant, который создается / экспортируется из eclipse) беспрепятственно работать с другой ide.

Это было полезно?

Решение

Самый умный ответ - "поступая таким образом" - если вы не работаете с несколькими IDE, вы не знаете, действительно ли вы готовы к работе с несколькими IDE.Честный.:)

Я всегда считал несколько платформ более громоздкими, поскольку они могут использовать разные стандарты кодирования (напримерWindows может по умолчанию использовать ISO-8859-1, Linux - UTF-8) - для меня кодировка вызвала гораздо больше проблем, чем IDE.

Еще несколько советов:

  • Возможно, вы захотите использовать Maven (http://maven.apache.org), позвольте ему генерировать файлы, специфичные для IDE, и никогда не передавайте их в систему управления версиями.
  • Чтобы быть уверенным, что вы генерируете правильные артефакты, у вас должен быть выделенный сервер для сборки ваших результатов (напримерcruisecontrol), либо с помощью ant, maven, либо любого другого инструмента.Эти результаты - это те, которые тестируются вне машин разработки.Отличный способ дать людям понять, что за пределами их собственной машины существует другой мир.
  • Запретите содержать любой путь к определенному компьютеру в любом файле IDE, найденном в системе управления версиями.Всегда ссылайтесь на внешние библиотеки по логическим путям, предпочтительно содержащим их версию (если вы не используете maven).

Другие советы

На самом деле мы поддерживаем Netbeans и проект Eclipse для нашего кода в SVN прямо сейчас без каких-либо проблем.Файлы Netbeans не затрагивают файлы Eclipse.Наши проекты структурированы следующим образом:

sample-project   
+ bin
+ launches  
+ lib  
+ logs
+ nbproject  
+ src  
  + java
.classpath
.project
build.xml

Самыми важными моментами, по-видимому, являются:

  • Запретить любые абсолютные пути в файлах проекта для любой IDE.
  • Настройте файлы проекта так, чтобы они выводили файлы класса в тот же каталог.
  • svn: игнорируйте частный каталог в каталоге .nbproject .
  • svn: игнорируйте каталог, используемый для вывода файла класса из IDES и любых других каталогов, созданных во время выполнения, таких как каталог logs выше.
  • Попросите людей последовательно использовать оба варианта чтобы разногласия разрешались быстро.
  • Также поддерживайте систему сборки независимую от IDE, такую как cruisecontrol.
  • Используйте UTF-8 и немедленно исправьте все проблемы с кодировкой .

Мы разрабатываем 32-разрядные и 64-разрядные версии Fedora 9, Vista и WindowsXP, и примерно половина разработчиков использует ту или иную IDE.Некоторые используют и то, и другое и регулярно переключаются туда-сюда.

Вероятно, самое лучшее - это нет зафиксируйте любой файл, связанный с IDE (например, Eclipse's .project), чтобы каждый мог проверить проект и делать свое дело так, как он хочет.

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

По большей части я бы согласился с seldaek, но я также склонен сказать, что вы должны по крайней мере предоставить файл, в котором указано, каковы зависимости, какую версию Java использовать для компиляции и т.д., И все дополнительное, что разработчику NetBeans / Eclipse может понадобиться для компиляции в своей IDE.

В настоящее время мы используем только Eclipse, и поэтому мы передаем все файлы Eclipse .classpath .project в svn, что, я думаю, является лучшим решением, потому что тогда каждый может слишком легко воспроизводить ошибки и тому подобное, вместо того, чтобы возиться со спецификой IDE.

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

Что касается системы управления версиями, я проверяю только те файлы, которые необходимы для сборки, из командной строки.Никаких файлов Eclipse.Когда я настраиваю новую машину разработки (кажется, два раза в год), требуется немного усилий, чтобы заставить Eclipse импортировать проект из файла сборки ant, но ничего страшного.(Теоретически, это должно работать так же для других IDE, не так ли?Угрюмый, который они, должно быть, могут импортировать из ant?)

Я также задокументировал, как настроить минимальную среду сборки.

Я использую maven и проверяю только pom & source.
После проверки проекта я запускаю mvn eclipse: eclipse
Я говорю svn игнорировать сгенерированный .project и т.д.

Вот что я делаю:

  1. Поддерживайте в системе управления версиями только ваш сценарий сборки ant и связанный с ним путь к классу.Путь к классу может быть либо явным в ant-скрипте, файле свойств, либо управляться ivy.
  2. напишите целевой объект ant для создания файла Eclipse .classpath из ant classpath
  3. Netbeans будет использовать ваш скрипт сборки и путь к классу, просто настройте его для этого с помощью проекта свободной формы.

Таким образом, вы получаете независимые от IDE скрипты сборки и довольных разработчиков :)

На сайте netbeans есть блог о том, как сделать 3.но я не могу найти его прямо сейчас.Я разместил несколько заметок о том, как сделать это выше, на своем сайте - текст ссылки (хотя быстро и некрасиво, извините)

Обратите внимание, что если вы используете Ivy (хорошая идея) и eclipse, у вас может возникнуть соблазн использовать плагин eclipse ivy.Я воспользовался им и обнаружил, что он ужасно глючный и ненадежный.Лучше использовать 2.выше.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top