Я запускаю Java-проект с открытым исходным кодом, который состоит из нескольких модулей в дереве зависимостей. Все эти модули являются подкаталогами в репозитории Subversion. Для новичков в нашем проекте очень сложно настроить все это вручную в eclipse.
Не все наши разработчики используют eclipse. Тем не менее, мы рассматриваем возможность просто проверить файлы .classpath и .project, чтобы помочь новичкам начать работу. Это хорошая идея? Или это приведет к постоянным конфликтам в этих файлах? Есть ли альтернативный способ упростить настройку проекта на eclipse?
eclipse
version-control
ide
амариллион
источник
источник
Ответы:
Определенно да, как я сказал в разделе « Держите ли вы файлы проекта под контролем версий? »
Но ... на самом деле это верно только для недавних настроек Eclipse3.5, где пути сборки поддерживают относительные пути :
И Eclipse3.6 был бы лучше, поскольку он поддерживает относительные пути для переменных пути в
Linked Resources
:(с версии 3.6M5)
источник
Определенно нет - вообще ужасная идея распространять файлы проекта через подрывную деятельность. Тем более, что кто-то может их каким-то странным образом модифицировать. Хорошая страница в документации по проекту - гораздо лучшая идея. В нашем проекте тоже много модулей и сложная настройка. Мы создали страницу слияния, описывающую, как начать работу с проектом для каждой популярной IDE - IntelliJ, Eclipse, NetBeans. Файл README в Subversion содержит ту же информацию.
источник
Я голосую против, но это потому, что я обычно генерирую эти файлы из maven
источник
По моему опыту, за исключением тех редких случаев, когда задействованы чисто локальные настройки, все должно находиться в системе контроля версий. Закон управления версиями гласит, что все, что было предложено, должно работать теми, кто отказывается. К сожалению, eclipse часто вызывает такие вещи
.classpath
:Итак, на моем Mac это работает, и, возможно, у кого-то на Mac есть такая же JRE, но это не сработает ни для кого.
Кроме того, нет простого способа обойти это. Eclipse всегда будет добавлять это. Я ХОЧУ, чтобы там был файл .classpath, потому что в нашей папке lib есть несколько сторонних JAR-файлов, в которых мы заботимся о версиях, поэтому мы оставляем их там, чтобы новым разработчикам не приходилось их получать. . Мы переходим к управляемой системе, но по-прежнему зарегистрированы управляемые + неуправляемые зависимости. Это означает, что всем разработчикам просто нужно убедиться, что в их каталогах есть два каталога
.classpath
. Но это лучше, чем исправлять JRE каждый раз, когда вы извлекаете и меняете свой .classpath каждый раз, когда вы фиксируете.Зато Eclipse делает для вас и другие приятные вещи. Файл .project обычно будет одинаковым для всех экземпляров, поэтому включите его. Но самое лучшее в системе управления версиями для eclipse - это настройки Run Configurations. На вкладке «Общие» в диалоговом окне «Конфигурации запуска» сохраните конфигурации, чтобы они отображались для ваших коллег в списках избранного для отладки и запуска. Для меня
.launch
в.settings
каталог помещается куча файлов , поэтому мы все можем их использовать.Итак, я говорю:
.settings
каталог переходит в систему контроля версий для конфигураций запуска (кроме * .prefs).classpath
остается вне.project
идет в.источник
Я бы проверил эти файлы, чтобы как можно проще начать работу с новыми пользователями. В лучшем случае пользователь должен проверить проект и иметь возможность запускать его без дополнительных знаний. Для этих файлов действуют те же правила, что и для других файлов в проекте: обращайтесь с ними осторожно. Вы не должны помещать абсолютные пути в исходный код, равно как и в файлы конфигурации.
Если файлы возвращены таким образом, что проект запускается с нуля, не должно быть особых усилий для их изменения.
источник
Я бы порекомендовал вам проверить файлы на Subversion, ЕСЛИ они не содержат абсолютных путей и других данных, которые могли бы напрямую привязать их к единой среде разработчика.
Если файлы содержат абсолютные пути и т.п., README будет лучшим выбором.
источник
Да, обязательно зарегистрируйте их, но убедитесь, что вы задокументировали все зависимости путей и по возможности избегаете абсолютных путей.
Если вы их не отметите, то любой, кто проверяет проект, должен будет воссоздать все эти настройки, что раздражает и потенциально подвержено ошибкам.
Некоторые сложные настройки могут быть лучше обработаны сценарием для создания этих файлов, но обычно лучше просто зарегистрировать их.
источник