РЕДАКТИРОВАТЬ:Должен быть какой-то способ подойти к этому без написания совершенно нового отладчика. В настоящее время я ищу способы построить поверх существующего отладчика Java. Если у кого-нибудь есть какие-либо идеи о том, как получить информацию, уже имеющуюся в отладчике Java (о кадрах стека, переменных, необработанных данных и т. д. ), это было бы очень полезно.
--
Что я пытаюсь сделать, так это то, что у меня есть этот фреймворк/API, построенный на Java, и я хотел бы написать отладчик подключаемого модуля eclipse, настроенный для моей фреймворка. Вот простой пример:
У меня есть два класса, один называется областью видимости, а другой называется переменной.Область содержит карту переменных. Весь код написан на java, но я использую это отношение переменных области -почти как новый язык, и мне нужна вкладка отладки переменных, которая дает мне список текущих активных областей с переменными, которые в настоящее время хранятся внутри. Вот код:
import java.util.Hashtable;
public class Scope {
private Hashtable variableList = new Hashtable();
// constructor
public Scope(){
}
public void put(String key, Variable v){
variableList.put(key, v);
}
public Variable get(String key){
return variableList.get(key);
}
}
public class Variable {
private String value;
private String name;
public Variable(String aName, String aValue){
name = aName;
value = aValue;
}
public String getValue(){
return value;
}
public String getName(){
return name;
}
public void setValue(String aValue){
value = aValue;
}
}
Это, очевидно, чрезвычайно простой пример, но я хотел бы сделать что-то похожее на это, где я могу получить окно переменных, установить точку останова и получить список «отладчика» из моих активных объектов области и переменных объектов внутри.
Я пытался прочитать и понять:http://www.eclipse.org/articles/Article-Debugger/how-to.html
и он довольно плотный (, а также чрезвычайно устаревший ), но я постараюсь потратить некоторое время, чтобы понять его. Я просто хотел посмотреть, есть ли у кого-нибудь какие-либо рекомендации высокого уровня о том, как подходить к этому типу проблем, поскольку у меня мало опыта разработки плагинов в eclipse или создания отладчиков.
Спасибо!