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-приложений.

0 ответов

Другие вопросы по тегам