Я пишу плагин eclipse. В плагине я написал функцию, которая может создать для меня командную строку. Строка содержит «-cp jar_path». Путь jar настраивается с помощью кнопки eclipse «добавить банки» (в конфигурации свойств проекта «добавить банки» находится в «java build path -> libraries».). Мне нужно получить абсолютный путь к файлам jar, но используя «добавить банки», я могу получить только относительный путь, используя следующий код. Я знаю, что использование «добавить внешние банки» в порядке, но я должен сделать «добавить банки» тоже. Есть ли какие-то подходы? Другой вопрос: если вы щелкните правой кнопкой мыши добавленную банку в разделе «ссылки на библиотеки» и нажмите «показать в -> свойства», IDE может получить абсолютное местоположение баннера. Я думаю, что, возможно, IDE получит его из workspace/.metadata/.plugins/com.eclipse.core.resources/.projects. Но даже если это правда, я до сих пор не могу напрямую читать эти файлы, потому что формат не может быть проанализирован общим читателем.При разработке плагина eclipse я могу получить абсолютный путь к файлам jar с помощью «Добавить банки»?
IPackageFragmentRoot[] roots = JavaCore.create(project).getPackageFragmentRoots();
for(IPackageFragmentRoot root : roots)
{
IClasspathEntry entry = root.getResolvedClasspathEntry();
if(IClasspathEntry.CPE_LIBRARY == entry.getEntryKind())
{
root.getRawClasspathEntry();
String cp = entry.getPath().toOSString();
}
}
Это довольно трудно следовать. Что такое кнопка «Добавить баночки»? Покажите нам какой-то код. –
Измените свой вопрос и поместите здесь код и другие данные. –
Класс 'IProject' является интерфейсом к информации в метаданных' .projects'. –