Как вы обрабатываете различные Java IDE и svn?

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

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

Ответ 1

Ответ на умную задницу - это так: если вы не работаете с несколькими IDE, вы не знаете, действительно ли вы готовы работать с несколькими IDE. Честный.:)

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

Еще несколько указателей:

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

Ответ 2

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

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

Самыми большими моментами являются:

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

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

Ответ 3

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

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

Ответ 4

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

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

Ответ 5

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

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

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

Ответ 6

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

Ответ 7

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

  • Поддерживать в исходном коде свой ant build script и связанный с ним путь к классам. Classpath может быть явным в файле ant script, файле свойств или управляемом плющом.
  • записать цель ant для создания файла Eclipse.classpath из класса ant classpath
  • Netbeans будет использовать вашу конструкцию script и classpath, просто настройте ее для этого через бесплатный проект формы.

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

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

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