Я работаю над проектом, который проверяет проекты Eclipse Java и получает некоторую информацию об исходных файлах, используя Eclipse AST.Сейчас это плагин Eclipse, но нам нужно сделать его независимым от Eclipse, мы используем только библиотеки AST Eclipse.
Я попытался скопировать необходимые JAR-файлы и запустить проект как обычное приложение Java (неплагин Eclipse, не зависящий от Eclipse), но затем я начал получать некоторые ошибки, потому что, когда я запускаю приложение вне Eclipse, AST не может получить необходимую информацию (данные проекта) из Eclipse и в некоторых случаях возвращает ноль.Например, когда я посещаю вызов метода (MethodInvocationNode
class), мне нужно знать, какой это метод класса, но я не могу из-за ошибок AST, которые я объяснил (MethodInvocationNode.resolveMethodBinding()
возвращает ноль в этом случае).
Я думаю, что мне нужно получить IProject
, в плагине Eclipse я получаю его от IWorkspace
(ResourcesPlugin.getWorkspace()
), который, я думаю, доступен во всех плагинах Eclipse.
Теперь яПодумайте, смогу ли я сделать из этого приложение для OSGi, возможно, я смогу каким-то образом получить IProject
, но я понятия не имею, как мне это сделать.Документация и учебники не сильно помогли.Также высока вероятность того, что я упускаю некоторые фундаментальные моменты о проектах Eclipse и / или приложениях OSGi :).
Короче говоря, как я могу получить IProject
данные в приложении OSGi?