В настоящее время я занимаюсь разработкой инструкторов по программированию. Эти преподаватели являются автономными приложениями Java. Я использую Eclipse JDT для анализа исходного кода Java и построения соответствующего абстрактного синтаксического дерева. Более того, я хочу зафиксировать сообщения об ошибках, которые будут запущены, если ученик будет компилировать свой код в Eclipse. Eclipse позволяет анализировать и отслеживать сообщения об ошибках для определенной строки кода (без контекста). После «скомпилированной» этой строки я получил 9 сообщений об ошибках. Когда я вставлял этот код в проект Eclipse, у меня было около 90 сообщений об ошибках. Очевидно, цель состоит в том, чтобы отслеживать как можно больше ошибок. Я подозреваю, что это зависит от контекста исходного кода.Отслеживание сообщений об ошибках компилятора JQT Eclipse (IProblem)
С этой целью я попытался создать программный проект в рабочей области и создать файл, содержащий строку исходного кода. Однако при выполнении моего приложения Java я получаю следующее сообщение об ошибке:
Exception in thread "main" java.lang.IllegalStateException: Workspace is closed.
at org.eclipse.core.resources.ResourcesPlugin.getWorkspace(ResourcesPlugin.java:399)
at com.example.helloworld.JavaErr.main(JavaErr.java:67)
Я прочитал много статей на эту тему. Похоже, мы можем получить доступ к ресурсам в рабочей области только в рамках проекта плагина Eclipse. Прежде чем отказаться от этого пути «решения», можно ли узнать, можем ли мы программно обращаться к рабочему пространству и всем его ресурсам в рамках внешнего автономного приложения Java?