У меня есть ряд связанных проектов, которые я разместил под управлением Git (все эти проекты находятся в одном рабочем пространстве, которое является верхним уровнем хранилища Git) и клонирован с моего рабочего стола (32 бит) на мой ноутбук (64 бит), поэтому я могу работать над ними везде. Папка рабочего пространства .metadata
исключается, но все папки проекта отслеживаются.Разработка проекта Java Eclipse на 32-битных и 64-битных системах Linux
Когда я открыл клонированный рабочее место на ноутбуке, я был встречен ошибкой:
Project 'project' is missing required library:
'/usr/eclipse/plugins/org.eclipse.swt.gtk.linux.x86_3.5.2.v3557f.jar'
Очевидно, что 64-разрядные затмение не имеет библиотеки 32-разрядные, но мне интересно, каким образом это должны быть разрешены.
Эта библиотека была добавлена как часть шаблона проекта SWT/JFace окна Builder. В папке плагинов eclipse есть org.eclipse.swt_3.5.2.v3557f.jar
, но изменение пути к классу для поиска не работает (не странно выглядит SWT). Просматривая остальную часть файла .classpath
для проектов SWT/JFace, эта конкретная библиотека является только, которая является такой специфичной для платформы.
Я поместил обе версии библиотеки в .classpath
, и это позволяет создавать или запускать код, хотя я должен игнорировать ошибку пути сборки, и эта ошибка будет распространяться обратно на мой рабочий стол, когда я вытащу ноутбук обратно ,
Могу ли я просто обозначить 64-битную банку на ноутбуке 32-битным именем, чтобы путь к классам мог найти библиотеку? Есть ли другое, лучшее решение?
UPDATE: Похоже, что этот тип проекта должен зависеть от конкретного фрагмента SWT, поэтому до тех пор, пока это лучшее решение, я собираюсь симлинки фрагменты в вопросе на обеих машинах, чтобы направить компилятор к правильный фрагмент. Строительство/запуск проектов на других машинах (и особенно в Windows) будет! но я построю этот мост, когда доберусь туда.
Подумайте об этом, почему, черт возьми, это написание classpaths с определенными платформами? Если бы я взял это на компьютер с Windows, он не смог бы найти _any_ вещей, которые ему нужно запустить ... Черт, документы на странице Google Code говорят, что пути классов начинаются с `C:/eclipse/plugins /` – 2010-12-05 06:52:12