Я импортировал внешние библиотеки, используя абсолютный путь. Но у меня есть две рабочие среды, переключение между Linux и Windows. Проекты загружаются из SVN. Поэтому мне было интересно, могу ли я импортировать эти библиотеки по относительному пути.
Как импортировать внешнюю библиотеку по относительному пути в eclipse?
Ответ 1
Вы должны объявить переменную (Java Build Path → Add Variable... → Configure Variable... → New), чтобы задать путь изменения в каждой системе (например, FOO_BAR_HOME).
Чем вы можете добавить переменную в библиотеки и отредактировать ее, чтобы указать на вашу библиотеку, например
%FOO_BAR_HOME%/lib/foobar.jar
Взгляните на существующие переменные для использования.
Альтернативу вы можете поместить библиотеку внутри проекта (например, вложенную папку "lib" ). Если вы добавите библиотеку из этого места ( "Добавить банки..." NOT "Добавить внешние банки..." ), она будет добавлена относительным путем.
Ответ 2
Эй, у меня тоже была эта проблема, но я могу предложить альтернативное решение для тех, кто хочет сохранить нужную библиотеку локально, но вне каталога Java Project.
Сначала добавьте нужную библиотеку, используя обычный метод "Добавить внешнюю библиотеку/банку".
Если вы заходите в домашний каталог своего Java-проекта, вы должны увидеть файл .classpath
. Отредактируйте это с помощью любого текстового редактора, который вы хотите, и найдите строку, которая ссылается на добавленную вами библиотеку. Затем скажите, что ваша библиотека называется lib.jar
, и у вас есть один уровень за пределами вашего проекта.
Предположим, что строка говорит:
<classpathentry kind="lib" path="C:/Users/Public/workspace/lib.jar"/>
Вместо того, чтобы перемещать lib.jar
в каталог Project, вы можете просто изменить эту строку, чтобы сказать:
<classpathentry kind="lib" path="./../lib.jar"/>
и ваш путь Java Build будет обновлен, чтобы найти его в каталоге на один уровень выше текущего проекта.
Кроме того, насколько мне известно, если вы используете Mac или любую ОС на базе Unix, тогда файл .classpath будет скрыт. Чтобы получить к нему доступ, вы можете попробовать открыть его из терминала, перейдя в каталог, который использует ваш Java-проект (фактическая папка проекта, а не рабочая область), а затем либо vi, либо vim ".classpath"
. Имейте в виду, что использование ls или даже ls -a может не работать, но верьте, что он будет там.
Как только вы изменили его на указанное место, сохраните файл, и когда вы вернетесь в eclipse, ссылка все равно должна работать. Имейте в виду, что "./"
в начале необходимо. Просто наличие "../"
не будет работать, или, по крайней мере, это не для меня.
Ответ 3
Я сделал это очень просто. У меня была lib с абсолютным путем в моем пути к классам:
/home/glauco/workspace/ltClubs/lib/swingx-core-1.6.2.jar
Итак, я просто удалил из него абсолютный путь, и он работает. Теперь это относительный xD:
lib/swingx-core-1.6.2.jar
Ответ 4
Это должен быть комментарий к предыдущему ответу, но странная система репутации с этого сайта заставляет меня публиковать новый ответ вместо этого... (без комментариев)
Вы можете использовать относительный путь, но в нем отсутствует './'.
Вместо
lib/swingx-core-1.6.2.jar
вы должны использовать
./lib/swingx-core-1.6.2.jar
Ответ 5
Добавьте папку, содержащую зависимости, в проект JAVA. Выберите и щелкните правой кнопкой мыши зависимости, "Добавить в путь сборки" появится в виде контекстного меню. Это добавляет зависимости, используя относительный путь вместо абсолютного пути.
Ответ 6
Чтобы добавить относительный путь в файл .classpath в Eclipse, выполните следующие действия.
1) Щелкните правой кнопкой мыши на вашем проекте → нажмите на меню "Создать" и выберите подменю "Папка" → введите имя папки в появившемся диалоговом окне → и нажмите "Готово".
2) Теперь перейдите в рабочее пространство Eclipse → Возьмите все файлы JAR с жесткого диска и вставьте их в папку lib ИЛИ вы также можете скопировать файлы JAR → щелкните правой кнопкой мыши на папке lib → выберите меню вставки из списка и вставьте Это.
3) После вставки щелкните правой кнопкой мыши проект в Eclipse → щелкните "Путь сборки" → выберите подменю "Настроить путь сборки" → во всплывающем диалоговом окне перейдите на вкладку "Библиотеки" и нажмите кнопку "Добавить JAR файлы..." → Выбрать папку lib и выберите все банки внутри папки lib → затем нажмите Apply и Close.
Вот оно, сделано! Вы добавили файлы jar в classpath, используя относительный путь!