Я работаю над проектом SWT как часть команды. Мы постоянно нарушаем среду сборки друг друга, потому что файл Eclipses .classpath проверяется на контроль версий, и мы включаем различные библиотеки SWT для наших машин.
В зависимости от того, кто совершил последнее, запись .classpath может быть:
<classpathentry kind="lib" path="lib/swt/swt-win32.jar"/>
или
<classpathentry kind="lib" path="lib/swt/swt-carbon.jar"/>
или
<classpathentry kind="lib" path="lib/swt/swt-gtk.jar"/>
Похоже, что библиотеки являются взаимоисключающими, то есть вы не можете включить их все сразу и позволить SWT решить это. Поэтому нам нужно как-то отфильтровать их для каждой платформы ...
У кого-нибудь есть идеи, как это сделать? Моя первоначальная идея состояла в том, чтобы разделить это на собственный файл «.classpath-swt» (игнорируемый VCS), автоматически сгенерировать его с помощью Ant и включить его в основной .classpath, но, похоже, Eclipse не поддерживает разбиение .classpath file.
Наш текущий обходной путь - избегать фиксации .classpath, если только мы фактически не изменили зависимости, однако это все еще означает, что нескольким людям приходится исправлять свои среды разработки каждый раз, когда изменяется .classpath.
Любые предложения будут высоко оценены, если они не "не используют Eclipse", поскольку это не вариант для этого проекта:)