Java gson fromJson наполовину показывает ошибку SignatureParser.class не найден
И любопытно, что в другой половине времени это действительно работает... Я просто не понимаю, почему это происходит.
Для большего контекста я пытаюсь создать экземпляр класса Indexer следующим образом:
public class Indexer {
private String name;
private List<String> allTerms = new ArrayList<String>();
private List<String> filePaths = new ArrayList<String>();
private List<double[]> fileVectors = new ArrayList<double[]>();
/* and the propper setters and getters*/
И вот, где экземпляр загружается из файла.json.
public Indexer loadIndex(String indexPath) {
try {
String jsonString = new FatherFileReader().getFileContent(indexPath);
Gson gson = new GsonBuilder().create();
JsonElement root = new JsonParser().parse(jsonString);
Indexer indexer = gson.fromJson(root, Indexer.class);
System.out.println(indexer.getName());
return indexer;
} catch(Exception e){
e.printStackTrace();
}
return null;
Когда я его выполняю, он печатает имя атрибута из объекта индексатора, но во второй раз, когда я пытаюсь это сделать, сразу за консолью появляется вкладка с именем SignatureParser.class со следующим сообщением. И в третий раз попробую... опять работает!! И так далее... Кроме того, он не попадает в блок catch, поэтому он не печатает StackTrace, и программа просто останавливается, и вкладка всплывает.
Редактор файлов классов Источник не найден Вложение источника не содержит источника для файла SignaturesParser.class. Вы можете изменить исходное вложение, нажав "Изменить вложенный источник" ниже.
Я не знаю, что происходит... Я был бы очень благодарен за помощь.
РЕДАКТИРОВАТЬ
Я уже заставил его работать стабильно, запустив его как Java-приложение, вместо того, чтобы запускать его с помощью отладчика eclipse... Мне все еще интересно узнать, что происходит. Но сейчас я собираюсь проверить с бегуном Java-приложений.