У меня есть сторонняя библиотека в моем репозитории SVN, и я хотел бы связать источник / javadoc с ней локально в Eclipse. То есть должен быть какой-то локальный параметр (например, запись в файле local.properties), который связывает источник / javadoc с файлом JAR, но не вводит локальные зависимости в репозиторий через .classpath. В идеале я бы
lib_src_dir = /my/path/to/lib/src
в local.properties, а затем
<classpathentry kind = "lib" path = "lib.jar" sourcepath = "${lib_src_dir}">
в .classpath. Можно ли это сделать?
[РЕДАКТИРОВАТЬ] Ответ @VonC полезен ... Есть ли способ загрузить переменные пути из текстового файла (например, local.properties) вместо перехода через Window -> Preferences -> General -> Workspace -> Linked Resources?
Только что добавил ответ на свой второй вопрос
Просто добавлены ограничения для файловой системы .epf в ответ на ваш последний комментарий




Я считаю, что этого лучше добиться с помощью:
Связанный ресурс определяет переменную пути, которая будет равна /my/path/to/lib/src.

Связанная папка будет ссылаться на ваш связанный ресурс

(вы можете использовать переменную, а не фиксированный путь, с помощью кнопки «Переменная»)
Переменная на самом деле всегда является локальной (для рабочего пространства) и будет изменена через экран предпочтений Linked Resources.
Связанная папка также может быть ... связанной файл, что позволяет ссылаться на архив по относительному пути (относительно переменной) .
Затем этот связанный файл (здесь связанный архив) можно связать с вашим classpathentry в атрибуте «source».
Проблема со связанными ресурсами в том, что они локальны для рабочего пространства в настройках.
Вы можете экспортировать настройки в файл [myPrefs.epf], а затем обрезать экспортированный файл, чтобы оставить только строки, содержащие pathvariable:
/instance/org.eclipse.core.resources/pathvariable.MY_DIRECTORY=/my/path/to/lib/src
Затем любой может импортировать этот специальный файл настроек, который повлияет только на часть «Linked Resources».
Это решение не очень удовлетворительное, поскольку файл настроек .epf не может быть автоматически загружен в проект..
Когда я настраиваю проект со связанными ресурсами, определяющими путь, я всегда оставляю большой README.txt в корне моего проекта, чтобы побудить пользователя указанного проекта определить те же связанные ресурсы с его / ее собственным фиксированным локальным путем.
Несколько ошибок находятся в процессе улучшения этой ситуации или около Тема связанных ресурсов.
Особенно:
DevByStarlight упоминает в комментарии проект (не очень активный с октября 2011 г.) рабочее местомеханик.
The Workspace Mechanic automates maintenance of your Eclipse environment by tweaking preferences, adding extension locations, and so on. You can use it to:
- Create a consistent environment among groups as large as the entire company, your local team, or even among your own many workspaces
- Save time setting up new workspaces
- Create tasks that ensure your favorite new preferences are applied to all your current and future workspaces. (This is one of our favorite features!)
The key to the Workspace Mechanic's behavior is the
Task.
A task describes a simple test and an action that, when run, changes the environment so the test will subsequently pass.Taskscan come in many forms: preference files, Java classes, Groovy scripts and Eclipse extensions. You can easily define your own Tasks.
Поставляется с набором скриптов:
Это хорошо работает для исходных путей, но: (1) пути к документам должны быть абсолютными или до архива? (2) как изменить переменную локально?
Спасибо за ответы. Но на самом деле .epf ничем не лучше, чем возиться с пользовательским интерфейсом настроек. Нет ли способа настроить проект так, чтобы он автоматически загружал переменные пути из предварительно определенного файла?
нет, боюсь, вы указываете на предел этой системы: dev.eclipse.org/newslists/news.eclipse.newcomer/msg22823.htm l
Ознакомьтесь с Workspace Mechanic для автоматической загрузки файлов .epf ... code.google.com/a/eclipselabs.org/p/workspacemechanic
@DevByStarlight интересно, хотя проект больше не поддерживается активно. Я добавил ссылку в ответ для большей наглядности.
Вы можете сделать это с помощью переменных пути к классам.
Каждый разработчик создает пару новых переменных в Window -> Preferences -> Java -> Build Path -> Classpath Variables.
Определите переменную (скажем, JAVA_LIB_DIR), которая указывает на каталог, содержащий сторонний JAR (или JARS). Определите другую переменную, которая указывает на каталог, содержащий сторонний исходный код (JAVA_SRC_DIR). Вы можете настроить это как хотите, но у нас есть такая структура:
common/
lib/
java/ <-- JAVA_LIB_DIR variable points to this directory
axis/
bitronix/
1.0/bitronix.jar "extension" is "bitronix/1.0/bitronix.jar"
...
В пути сборки вашего проекта используйте параметр «Добавить переменную ...», чтобы добавить библиотеку. Затем, когда вы «прикрепите источник», вам будет предложено ввести переменную и расширение исходного кода.
Таким образом, можно зарегистрировать один общий файл .classpath, позволяя каждому разработчику размещать свою собственную библиотеку и исходные каталоги там, где им нравится.
Я только что нашел простой ответ на это (в Индиго) после работы над ним в фоновом режиме и свободных минут в течение нескольких дней. Самый простой способ, который я нашел, - это развернуть ваш проект в Project Explorer, перейти в свои библиотеки, на которые есть ссылки, щелкнуть правой кнопкой мыши соответствующий JAR, на который имеется ссылка, и выбрать «Свойства». Там у вас есть возможность указать местоположение JavaDocs. Введите расположение папки, содержащей файлы index.html и packages-list, которые являются частью документации Javadocs. Кусок пирога!
Единственная проблема, которую я вижу до сих пор, заключается в том, что я уверен, что вам нужно делать это в каждом проекте, который ссылается на эту библиотеку.
Это очень помогло. Спасибо!!
Просто добавлены уточнения в ответ на ваш комментарий